|
|
|
Преобразование строки в timestamp в хранимой процедуре
|
|||
|---|---|---|---|
|
#18+
Доброго времени суток. Я новичок в создании хранимых процедур и еще практически не имею опыта работы с ними. Вопрос может быть наивен :-), но .... Firebird 2.5 Делаю хранимую процедуру, которая проверяет время в поле типа TIMESTAMP и при необходимости округляет его до кратных значений, например 5, 10, 15 и т.д. минут. Выделяю нужные мне элементы даты с помощью EXTRACT и получаю Код: plsql 1. 2. tmp2 это varchar(30) Это работает Дальше делаю тоже самое с временем Код: plsql 1. Это тоже работает, а вот как из этого получить в переменную типа TIMESTAMP значение у меня не получается. Может есть более легкий способ, но почитав инет и этот форум не нашел. Подскажите пожалуйста. Мне нужно чтобы уже поправленная дата и время дальше участвовали в сравнении с переменной типа TIMESTAMP и поведение этого сравнения было как при сравнении "даты и времени" с "датой и временем". Спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.09.2013, 19:57:40 |
|
||
|
Преобразование строки в timestamp в хранимой процедуре
|
|||
|---|---|---|---|
|
#18+
vladgulЯ новичок в создании хранимых процедур и еще практически не имею опыта работы с ними. В таком случае тебе, наверное, будет проще написать UDF. Ведь на каком-нибудь компилируемом языке ты писать программы умеешь?.. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.09.2013, 20:02:32 |
|
||
|
Преобразование строки в timestamp в хранимой процедуре
|
|||
|---|---|---|---|
|
#18+
автор Dimitry Sibiryakov: Ведь на каком-нибудь компилируемом языке ты писать программы умеешь?.. Это конечно, да. :-) Но теперь по сути вопроса, это нельзя сделать? или просто нужно знать КАК это сделать? (Без UDF) Т.е. date + time, чтобы получилось timestamp. Возможно ли такое преобразование? Или из varchar сразу в timestamp (вот с этим возникли проблемы, по отдельности as date и as time все конвертировалось, a вот в timestamp ругалось на время "09:59:59", а полная строка выглядела так: "19.09.2013 09:59:59" P.S. С UDF пока вообще не сталкивался и как использовать такие функции не очень представляю, какие требования и какие ресурсы потребляются, какое быстродействие и т.п. вопросы. В целом - не знаком совсем. Что нужно для дальнейшего портирования приложения на другой комп. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.09.2013, 22:40:44 |
|
||
|
Преобразование строки в timestamp в хранимой процедуре
|
|||
|---|---|---|---|
|
#18+
vladgulпо отдельности as date и as time все конвертировалось, a вот в timestamp ругалось на время "09:59:59", а полная строка выглядела так: "19.09.2013 09:59:59" Код: sql 1. 2. 3. 4. 5. Ы? PS: А кретин, который хранит timestamp в виде строки, заслужил отдельный пендель... Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.09.2013, 22:52:19 |
|
||
|
Преобразование строки в timestamp в хранимой процедуре
|
|||
|---|---|---|---|
|
#18+
Dimitry SibiryakovPS: А кретин, который хранит timestamp в виде строки, заслужил отдельный пендель... ну, почему же сразу кретин? просто месье ещё не все в жизни попробовал... =) в этом же есть свои прелести: 1) БДСМ с конвертацией туда-сюда из даты в строку и обратно; 2) секс с трудноуловимыми багами форматов конвертации почему YYYYDDMM, а не YYYYMMDD ? или YYMMDD; 3) содомия с датами, типа 30 февраля, вызванная ручной правкой строк; 4) время - это отдельная область приятных ошущений. оно бывает от 0 до 24, а бывает AM/PM. прибавляем немного содомии и получаем 13:00 AM (можно PM - ещё интереснее). 5) чуть не забыл! есть еще одна интересная поза: хранить время в формате D.M.YYYY, без лидирующих нулей в дне и месяце. а потом попытаться, к примеру, отсортировать данные в выборке по дате. Асиливший это станет настоящим махараджи! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.09.2013, 02:16:34 |
|
||
|
|

start [/forum/topic.php?fid=40&msg=38405422&tid=1564301]: |
0ms |
get settings: |
13ms |
get forum list: |
21ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
83ms |
get topic data: |
11ms |
get forum data: |
4ms |
get page messages: |
62ms |
get tp. blocked users: |
2ms |
| others: | 200ms |
| total: | 404ms |

| 0 / 0 |
