Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 select * from table1 where field1 = null (MSSQL)  [new]
Константин Заровный
Member

Откуда: Волгодонск
Сообщений: 954
Как правильно настроить подключение к серверу, чтобы эта конструкция отрабатывалась сразу после подключения - без запуска SQL запроса SET ...
15 июл 04, 19:57    [811247]     Ответить | Цитировать Сообщить модератору
 Re: select * from table1 where field1 = null (MSSQL)  [new]
Glory
Member

Откуда:
Сообщений: 104760
Имхо - это без явных команд SET невозможно. Т.е. со 100%ой гарантией невозможно.
Потому что например "The SQL Server ODBC driver and Microsoft OLE DB Provider for SQL Server automatically set ANSI_DEFAULTS to ON when connecting. " А ANSI_DEFAULTS включает SET ANSI_NULLS.

А какие-то как мне помнится старые Borland-ие драйвера не отсылают никаких SET команд и тогда эти настройки будут браться из соответствующих настроек по умолчанию для базы/сервера.

Правда установка SET ANSI_NULLS записывается вместе с процедурой и автоматически восстанавливается на время ее выполнения. Так что можно поместить ваш запрос в процедуру созданную при SET ANSI_NULLS OFF.
15 июл 04, 20:19    [811275]     Ответить | Цитировать Сообщить модератору
 Re: select * from table1 where field1 = null (MSSQL)  [new]
Константин Заровный
Member

Откуда: Волгодонск
Сообщений: 954
Проблеммы в Update SQL - который выглядит приблизительно так

Update table
    Set F1=:F1 
  where
    F1=:OLD_F1

в случае если OLD_F1 is NULL - то не работает и надо этот SET лепить или макросы вешать для замены = на is
Может кто придумает что покрасивее?
15 июл 04, 20:28    [811287]     Ответить | Цитировать Сообщить модератору
 Re: select * from table1 where field1 = null (MSSQL)  [new]
Glory
Member

Откуда:
Сообщений: 104760
Ну так что насчет процедуры ??? Куда уж красивее ?
15 июл 04, 20:30    [811290]     Ответить | Цитировать Сообщить модератору
 Re: select * from table1 where field1 = null (MSSQL)  [new]
Константин Заровный
Member

Откуда: Волгодонск
Сообщений: 954
Да не всегда подходит - дело в том, что этот запрос генерится программой
15 июл 04, 20:58    [811315]     Ответить | Цитировать Сообщить модератору
 Re: select * from table1 where field1 = null (MSSQL)  [new]
BugsBunny
Member

Откуда: GMT+5=EST
Сообщений: 2414
What about changing this particular option for whole database?
THough, again, stored procedures are on their own...
15 июл 04, 21:09    [811327]     Ответить | Цитировать Сообщить модератору
 Re: select * from table1 where field1 = null (MSSQL)  [new]
Константин Заровный
Member

Откуда: Волгодонск
Сообщений: 954
BugsBunny
What about changing this particular option for whole database?
THough, again, stored procedures are on their own...

Боюсь - тоже не работает - так как по гдето в документации прочитал, что при подключении ANSI NULL включены.
Прийдется первый запрос после подключения делать SET
15 июл 04, 22:02    [811366]     Ответить | Цитировать Сообщить модератору
 Re: select * from table1 where field1 = null (MSSQL)  [new]
BugsBunny
Member

Откуда: GMT+5=EST
Сообщений: 2414
Константин Заровный
...
Боюсь - тоже не работает - так как по гдето в документации прочитал, что при подключении ANSI NULL включены
...

точно! это я ляпнун неподумавши...
Sorry
15 июл 04, 22:39    [811407]     Ответить | Цитировать Сообщить модератору
 Re: select * from table1 where field1 = null (MSSQL)  [new]
BugsBunny
Member

Откуда: GMT+5=EST
Сообщений: 2414
By the way, in ODBC DSN configiration utility there are checkboxes for these options (though you most likely don't use ODBC...)
15 июл 04, 22:47    [811416]     Ответить | Цитировать Сообщить модератору
 Re: select * from table1 where field1 = null (MSSQL)  [new]
Константин Заровный
Member

Откуда: Волгодонск
Сообщений: 954
BugsBunny
By the way, in ODBC DSN configiration utility there are checkboxes for these options (though you most likely don't use ODBC...)

Это точно
Я предпочитаю работать с OLEDB таким вот образом
16 июл 04, 00:12    [811523]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить