Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Как задать параметр коннекта для компонента database  [new]
topdon
Member

Откуда: Ростов- на- Дону
Сообщений: 564
В среде MS Management Studio выполняю запрос

SET CONCAT_NULL_YIELDS_NULL OFF

select row_number()over(order by current_timestamp) N,
case libra1.dbo.isfld(doc,'700')
when 0 then
libra1.dbo.getsubfield(doc, '200a') + ' ['
+ libra1.dbo.getsubfield(doc, '200b') + '] : '
+ libra1.dbo.getsubfield(doc, '200f') + '; '
+ libra1.dbo.getsubfield(doc, '200g') + ' - '

end as BO,
libra1.dbo.GetAs ('metod', docid) as [AS],
libra1.dbo.kolekz ('metod', docid) as EKZ

from library2.dbo.metod__doc

и все нормально. Первая строчка нужна для того, чтобы результат сцепления был непуст при хотя бы одном пустом поле.

Но это не проходит для Query. Пытался задать параметр как ключ для DataBASE. нЕ ВЫШЛО. Прошу о помощи.
25 ноя 13, 15:37    [15186140]     Ответить | Цитировать Сообщить модератору
 Re: Как задать параметр коннекта для компонента database  [new]
Glory
Member

Откуда:
Сообщений: 104751
topdon
Но это не проходит для Query.

Т.е. сообщение об ошибке "Это не проходит !" ?

topdon
Пытался задать параметр как ключ для DataBASE

сообщение об ошибке такое же ?
25 ноя 13, 15:41    [15186176]     Ответить | Цитировать Сообщить модератору
 Re: Как задать параметр коннекта для компонента database  [new]
o-o
Guest
topdon,

в смысле, как не меняя опции не получать всеобщий NULL?
использовать isnull(<..>, '') в каждом слагаемом
25 ноя 13, 15:45    [15186211]     Ответить | Цитировать Сообщить модератору
 Re: Как задать параметр коннекта для компонента database  [new]
topdon
Member

Откуда: Ростов- на- Дону
Сообщений: 564
Glory,
SET CONCAT_NULL_YIELDS_NULL OFF
select row_number()over(order by current_timestamp) N,
case libra1.dbo.isfld(doc,'700')
when 0 then
libra1.dbo.getsubfield(doc, '200a') + ' ['
+ libra1.dbo.getsubfield(doc, '200b') + '] : '
+ libra1.dbo.getsubfield(doc, '200f') + '; '
+ libra1.dbo.getsubfield(doc, '200g') + ' - '
+ libra1.dbo.getsubfield(doc, '210a') + ': '
+ libra1.dbo.getsubfield(doc, '210c') + ', '
+ libra1.dbo.getsubfield(doc, '210d') + '.-'
+ libra1.dbo.getsubfield(doc, '215a') + ' '
+ libra1.dbo.getsubfield(doc, '010g') + '0,00 '

else
libra1.dbo.getsubfield(doc, '700a') + ', '
+ libra1.dbo.iifld(libra1.dbo.getsubfield(doc, '700g'),libra1.dbo.getsubfield(doc, '700b')) + '. '
+ libra1.dbo.getsubfield(doc, '200a') + ' ['
+ libra1.dbo.getsubfield(doc, '200b') + '] : '
+ libra1.dbo.getsubfield(doc, '200e') + ' / '
+ libra1.dbo.getsubfield(doc, '200f') + ' ; '
+ libra1.dbo.getsubfield(doc, '200g') + ' - '
+ libra1.dbo.getsubfield(doc, '210a') + ', '
+ libra1.dbo.getsubfield(doc, '210d') + '.-'
+ libra1.dbo.getsubfield(doc, '215a') + ' '
+ libra1.dbo.getsubfield(doc, '320a') + '- '
+ libra1.dbo.getsubfield(doc, '0109')

end as BO,
libra1.dbo.GetAs ('metod', docid) as [AS],
libra1.dbo.kolekz ('metod', docid) as [EKZ]

from library2.dbo.metod__doc


Application raised an exception class PDOException with message 'SQLSTATE[42000]: [Microsoft][SQL Server Native Client 10.0][SQL Server]Incorrect syntax near the keyword 'SET'.'
Click for detailed information

Пытался оформить в виде функции- нельзя, говорит, использовать SET...

А у меня на этих запросах все построено.
25 ноя 13, 15:57    [15186287]     Ответить | Цитировать Сообщить модератору
 Re: Как задать параметр коннекта для компонента database  [new]
Glory
Member

Откуда:
Сообщений: 104751
topdon
Application raised an exception class PDOException with message 'SQLSTATE[42000]: [Microsoft][SQL Server Native Client 10.0][SQL Server]Incorrect syntax near the keyword 'SET'.'
Click for detailed information

и где вы все это запускаете ?
25 ноя 13, 16:01    [15186312]     Ответить | Цитировать Сообщить модератору
 Re: Как задать параметр коннекта для компонента database  [new]
topdon
Member

Откуда: Ростов- на- Дону
Сообщений: 564
Glory,

в HTML Builder 5.0 Embarcadero
25 ноя 13, 16:02    [15186326]     Ответить | Цитировать Сообщить модератору
 Re: Как задать параметр коннекта для компонента database  [new]
o-o
Guest
topdon
...
А у меня на этих запросах все построено.

а вот не надо на недефолтные опции рассчитывать,
противоречащие стандарту ANSI.
заменяйте NULL-ы в каждом слагаемом
25 ноя 13, 16:03    [15186340]     Ответить | Цитировать Сообщить модератору
 Re: Как задать параметр коннекта для компонента database  [new]
Glory
Member

Откуда:
Сообщений: 104751
topdon
в HTML Builder 5.0 Embarcadero

И какую же команду оно отсылает серверу ?
25 ноя 13, 16:03    [15186342]     Ответить | Цитировать Сообщить модератору
 Re: Как задать параметр коннекта для компонента database  [new]
topdon
Member

Откуда: Ростов- на- Дону
Сообщений: 564
o-o,

Вот так

isnull(libra1.dbo.getsubfield(doc, '200a') , '') + ' ['
+ isnull(libra1.dbo.getsubfield(doc, '200b'),'') + ...

и так далее?

Это же кошмар. Не сильно замедлится?
Может в каждой фукции попробовать перед return проверить?
25 ноя 13, 16:16    [15186433]     Ответить | Цитировать Сообщить модератору
 Re: Как задать параметр коннекта для компонента database  [new]
topdon
Member

Откуда: Ростов- на- Дону
Сообщений: 564
Glory,

Не понял, какую команду? Там на Query ставится Active. Отсылается этот запрос.
25 ноя 13, 16:25    [15186478]     Ответить | Цитировать Сообщить модератору
 Re: Как задать параметр коннекта для компонента database  [new]
Glory
Member

Откуда:
Сообщений: 104751
topdon
Там на Query ставится Active.

Это какой то объект в вашем HTML Builder 5.0 Embarcadero. Он не имеет никакого отношения к MSSQL

topdon
Отсылается этот запрос.

Если бы это было так, то сообщение об ошибке было другим нежели Incorrect syntax near the keyword 'SET'.'
25 ноя 13, 16:31    [15186515]     Ответить | Цитировать Сообщить модератору
 Re: Как задать параметр коннекта для компонента database  [new]
topdon
Member

Откуда: Ростов- на- Дону
Сообщений: 564
Glory,
Объект- Query. Убираю строку- все работает.
25 ноя 13, 16:34    [15186545]     Ответить | Цитировать Сообщить модератору
 Re: Как задать параметр коннекта для компонента database  [new]
Glory
Member

Откуда:
Сообщений: 104751
topdon
Объект- Query. Убираю строку- все работает.

И что дальше ? Ищите форум по HTML Builder 5.0 Embarcadero, если не горите желанием выяснять, что отправляется серверу.
25 ноя 13, 16:35    [15186561]     Ответить | Цитировать Сообщить модератору
 Re: Как задать параметр коннекта для компонента database  [new]
Konst_One
Member

Откуда:
Сообщений: 11681
ваш клиент не позволяет выполнять multi-statement sql. ищите настройки соединения и на этом уровне пытайтесь задать этот параметр коннекта
25 ноя 13, 16:36    [15186563]     Ответить | Цитировать Сообщить модератору
 Re: Как задать параметр коннекта для компонента database  [new]
topdon
Member

Откуда: Ростов- на- Дону
Сообщений: 564
Konst_One,
Спасибо. но это ничего не даст, т.к. я пишу WWW- модуль для установки на сервере.
Поэтому либо установить этот параметр там, либо упрятать проверку на NULL внутри
многочисленных функций. Спасибо всем.
26 ноя 13, 13:05    [15190783]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить