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

Откуда:
Сообщений: 7
Есть прикладное ПО которое работало c MS SQL 2008R2. Поставили MS SQL 2012 R2. Нужно для совместимости с mssql2008r2 изменить системную процедуру sp_helpconstraint. Может кто подскажет алгоритм изменения системой процедуры ?
6 июл 17, 13:38    [20618938]     Ответить | Цитировать Сообщить модератору
 Re: Изменить sys процедуру  [new]
LSV
Member [заблокирован]

Откуда: Киев
Сообщений: 30817
Какое-то очень нездоровое желание, ИМХО

Как вариант, мож сделать копию этой ХП с нужными правками и отличием в одну букву названия и попробовать подменить в готовом ПО ?
6 июл 17, 13:48    [20618981]     Ответить | Цитировать Сообщить модератору
 Re: Изменить sys процедуру  [new]
vk29514
Member

Откуда:
Сообщений: 7
vk29514,
Почитал что есть на форуме. Похоже в 2012 это или уже не работает или я что-то делаю не так.
6 июл 17, 13:50    [20618995]     Ответить | Цитировать Сообщить модератору
 Re: Изменить sys процедуру  [new]
vk29514
Member

Откуда:
Сообщений: 7
LSV,
Спасибо. К коду готового ПО нет доступа.
6 июл 17, 13:51    [20619001]     Ответить | Цитировать Сообщить модератору
 Re: Изменить sys процедуру  [new]
Cammomile
Member

Откуда:
Сообщений: 1214
". Нужно для совместимости с mssql2008r2 изменить системную процедуру sp_helpconstraint"
Нет, нужно написать свою sp_helpconstraint которая реализует нужную логику
6 июл 17, 13:53    [20619015]     Ответить | Цитировать Сообщить модератору
 Re: Изменить sys процедуру  [new]
TaPaK
Member

Откуда: Kiev
Сообщений: 6801
vk29514
Есть прикладное ПО которое работало c MS SQL 2008R2. Поставили MS SQL 2012 R2. Нужно для совместимости с mssql2008r2 изменить системную процедуру sp_helpconstraint. Может кто подскажет алгоритм изменения системой процедуры ?

дропнуть, создать, пометить как системную или через DAC есть вариант
6 июл 17, 13:54    [20619023]     Ответить | Цитировать Сообщить модератору
 Re: Изменить sys процедуру  [new]
vk29514
Member

Откуда:
Сообщений: 7
Cammomile,
Логика не меняется. Нужно изменить длину поля constraint_type. В 2008 длина была 146, в 2012 - 256. ПО на VFP9 и получает от SQL разный тип поля. От 2008 получает тип Char(146), а от 2012 Memo. Нужно то и не много изменить длину с 256 на 254.
6 июл 17, 14:01    [20619054]     Ответить | Цитировать Сообщить модератору
 Re: Изменить sys процедуру  [new]
Владислав Колосов
Member

Откуда:
Сообщений: 7651
Разве системные процедуры предназначены для использовании в прикладном ПО?

Рискнули - и проиграли. Се ля ви. Откатывайте на 2008r2.
6 июл 17, 14:01    [20619057]     Ответить | Цитировать Сообщить модератору
 Re: Изменить sys процедуру  [new]
vk29514
Member

Откуда:
Сообщений: 7
TaPaK,
Так и пытаюсь делать. Как дропнуть - не дает.
6 июл 17, 14:02    [20619064]     Ответить | Цитировать Сообщить модератору
 Re: Изменить sys процедуру  [new]
Владислав Колосов
Member

Откуда:
Сообщений: 7651
vk29514
Cammomile,
Логика не меняется. Нужно изменить длину поля constraint_type. В 2008 длина была 146, в 2012 - 256. ПО на VFP9 и получает от SQL разный тип поля. От 2008 получает тип Char(146), а от 2012 Memo. Нужно то и не много изменить длину с 256 на 254.


Так бы и написали. Вам надо клиента подправить. Перегружайте результат запрос в другой курсор и нормируйте по длине, например.
6 июл 17, 14:04    [20619076]     Ответить | Цитировать Сообщить модератору
 Re: Изменить sys процедуру  [new]
TaPaK
Member

Откуда: Kiev
Сообщений: 6801
vk29514
TaPaK,
Так и пытаюсь делать. Как дропнуть - не дает.

http://www.slaviks-blog.com/2010/08/19/changing-ms-sql-server-system-stored-procedures/
6 июл 17, 14:09    [20619102]     Ответить | Цитировать Сообщить модератору
 Re: Изменить sys процедуру  [new]
vk29514
Member

Откуда:
Сообщений: 7
TaPaK,
Спасибо. Сервер освободится, попробую.
6 июл 17, 14:26    [20619177]     Ответить | Цитировать Сообщить модератору
 Re: Изменить sys процедуру  [new]
TaPaK
Member

Откуда: Kiev
Сообщений: 6801
vk29514
TaPaK,
Спасибо. Сервер освободится, попробую.
но здоровым вас никто от таких действий не назовёт :)
6 июл 17, 14:38    [20619233]     Ответить | Цитировать Сообщить модератору
 Re: Изменить sys процедуру  [new]
vk29514
Member

Откуда:
Сообщений: 7
TaPaK,
Думаю что я не первый и не последний.
6 июл 17, 15:05    [20619376]     Ответить | Цитировать Сообщить модератору
 Re: Изменить sys процедуру  [new]
LSV
Member [заблокирован]

Откуда: Киев
Сообщений: 30817
vk29514
LSV,
Спасибо. К коду готового ПО нет доступа.
Но можно в теле ЕХЕ/ДЛЛ поискать имя процедуры. И поменять букву. Иногда такое нормально прокатывает. :)
6 июл 17, 15:44    [20619595]     Ответить | Цитировать Сообщить модератору
 Re: Изменить sys процедуру  [new]
AlanDenton
Member [скрыт]

Откуда:
Сообщений: 1004
К слову если потом накатите сервис пак, то прийдется заново что-то там шаманить (системные то базы обновляются). ИМХО проще в файле найти строку с хранимкой и подменить ее (как советовали ранее)
7 июл 17, 08:47    [20621443]     Ответить | Цитировать Сообщить модератору
 Re: Изменить sys процедуру  [new]
Massa52
Member

Откуда:
Сообщений: 379
VFP9 - это наверное Visual FoxPro.
Там наверное и экзешника то нет.
7 июл 17, 10:11    [20621741]     Ответить | Цитировать Сообщить модератору
 Re: Изменить sys процедуру  [new]
правильный проходящий.
Guest
Massa52
VFP9 - это наверное Visual FoxPro.
Там наверное и экзешника то нет.
Есть. В виде, как минимум, VFP9.exe :), что, конечно же, нарушает все лицензии.
7 июл 17, 10:21    [20621807]     Ответить | Цитировать Сообщить модератору
 Re: Изменить sys процедуру  [new]
правильный проходящий.
Guest
vk29514
TaPaK,
Думаю что я не первый и не последний.
В выборе сомнительных способов решения задач? Разумеется, не первый и не последний.
Клиенты на VFP9 обычно достаточно легко модифицируемы. Может таки потрудитесь в этом направлении?
7 июл 17, 10:35    [20621894]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить