|
|
|
Странное преобразование дат MS SQL 7.0
|
|||
|---|---|---|---|
|
#18+
Профессионалы MS SQL 7.0, помогите разобраться! Создается хранимая процедура вида: CREATE PROCEDURE #PROC @D1 datetime , @D2 datetime AS BEGIN SELECT {список полей} FROM {список таблиц} WHERE (Таблица1.DATE BETWEEN @D1 AND @D2) AND {список условий} END Выполнение: EXECUTE #PROC '20020101', '20020630' При ее выполнении недавно начались проблемы: запрос стал все время возвращать разное число записей, причем всегда неверное значение (выполняю в Query Analyzer, оперативные данные в базе не меняются) Если процедуру написать в виде: CREATE PROCEDURE #PROC @D1 datetime , @D2 datetime AS BEGIN DECLARE @D1x datetime, @D2x datetime SET @D1x = convert(datetime,@D1) SET @D2x = convert(datetime,@D2) SELECT {список полей} FROM {список таблиц} WHERE (Таблица1.DATE BETWEEN @D1x AND @D2x) AND {список условий} END то все работает правильно. Преобразование типов перед вызовом процедуры не помогает: DECLARE @D1 datetime, @D2 datetime SET @D1 = convert(datetime, '20020101') SET @D2 = convert(datetime, '20020630') EXECUTE #P_SQUERY @D1, @D2 В MS SQL 2000 все варианты работают правильно. Может кто-нибудь знает, что происходит? PS. Все даты в таблице корректные (правда присутствует NULL), ошибок в базе нет, установлен SP4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.07.2002, 18:26:18 |
|
||
|
Странное преобразование дат MS SQL 7.0
|
|||
|---|---|---|---|
|
#18+
CREATE PROCEDURE #PROC @D1 char(8) , @D2 char(8) AS ... И передавать в процедуру пераметры в виде char, в формате 'yyyymmdd'. ХАО. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.07.2002, 19:50:01 |
|
||
|
Странное преобразование дат MS SQL 7.0
|
|||
|---|---|---|---|
|
#18+
Передавай параметры в виде "yyyymmdd HH:MM" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2002, 06:50:15 |
|
||
|
|

start [/forum/topic.php?fid=46&msg=32036392&tid=1821844]: |
0ms |
get settings: |
6ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
44ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
38ms |
get tp. blocked users: |
1ms |
| others: | 193ms |
| total: | 313ms |

| 0 / 0 |
