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

Откуда: Москва
Сообщений: 359
Проблема:
При создании процедуры в EM он устанвливает ее subj. параметры в OFF
Установки DATABASEPROPERTYEX('some_db', 'IsAnsiNullsEnabled') и DATABASEPROPERTYEX('some_db', 'IsQuotedIdentifiersEnabled') равные 1 при этом полностью игнорируются.
Возможно ли заставить его устанавливать их в ON? (надеюсь, понятно, для чего это нужно - индексированные вьюхи и индексы на вычисляемых полях)
Microsoft в одной из статей подтверждает, что это bug и предлагает либо в окне создания процедуры писать:

SET ANSI_NULLS ON

SET QUOTED_IDENTIFIER ON
GO
CREATE PROC .....

либо пользоваться QA
но коллег-разработчиков нелегко отучить от дурных привычек :)

как вариант - можно, конечно, написать job, который будет запускаться периодически и делать что-то типа:

exec sp_configure 'allow updates', 1

reconfigure with override
GO
update sysobjects set status = (status | 0x60000000) where type = 'P' and (status & 0x60000000) = 0
GO
exec sp_configure 'allow updates', 0
reconfigure with override
GO

но как-то это не очень хорошо... непереносимо и все такое...

Хочется, чтобы кто сказал "Есть способ лучше!". Найдутся желающие? :)
4 фев 03, 14:29    [121505]     Ответить | Цитировать Сообщить модератору
 Re: ANSI_NULLS и QUOTED_IDENTIFIER в EM  [new]
smike
Member

Откуда: St.Petersburg
Сообщений: 10
Сам не пробовал, но может SP3 поможет?
И почему бы коллег не приучить явно устанавливать флаги, пусть осознают эти тонкости. :) Возможно пригодится в дальнейшем.
4 фев 03, 15:03    [121548]     Ответить | Цитировать Сообщить модератору
 Re: ANSI_NULLS и QUOTED_IDENTIFIER в EM  [new]
jimmers
Member

Откуда: Санкт-Петербург - New York City
Сообщений: 5069
Шаблоны?
4 фев 03, 16:26    [121644]     Ответить | Цитировать Сообщить модератору
 Re: ANSI_NULLS и QUOTED_IDENTIFIER в EM  [new]
Гнездин Петр
Member

Откуда: Москва
Сообщений: 359
2 smike: sp3 уже стоит. И у Microsoft нет отметки о том, что баг исправлен.
2 jimmers: так если пользоваться QA, то там и так можно раз и навсегда поставить нужные "галочки" и они будут использоваться. Речь-то о том, чтобы создание процедур из EM нормально работало (изменение процедур, тем не менее, работает корректно в том смысле, что EM сохранит предыдущие установки данной процедуры - хоть тут он себя прилично ведет)

похоже, придется все-таки душить своих программеров... :)
4 фев 03, 17:38    [121710]     Ответить | Цитировать Сообщить модератору
 Re: ANSI_NULLS и QUOTED_IDENTIFIER в EM  [new]
Glory
Member

Откуда:
Сообщений: 104760
Мне кажется что "перевоспитать" своих программистов все-таи выйдет дешевле чем исправить особенности работы EM.

Теоритически в качестве отлова тех, кто создает "неправильные" процедуры можно ипользовать Profiler
4 фев 03, 17:42    [121716]     Ответить | Цитировать Сообщить модератору
 Re: ANSI_NULLS и QUOTED_IDENTIFIER в EM  [new]
jimmers
Member

Откуда: Санкт-Петербург - New York City
Сообщений: 5069
В EM есть понятие Шаблон хранимой процедуры.
4 фев 03, 18:10    [121743]     Ответить | Цитировать Сообщить модератору
 Re: ANSI_NULLS и QUOTED_IDENTIFIER в EM  [new]
Гнездин Петр
Member

Откуда: Москва
Сообщений: 359
2 Glory: да, похоже, что перевоспитать будет легче :)
2 jimmers: хмм... не знал... я думал, что речь шла о шаблонах процедур в QA...

спасибо за ответы
4 фев 03, 23:50    [121920]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить