Простите не по теме. SQL - кто нибудь?

voron.308

Есть 1000 + "stored procedures" , в каждую нужно добавить "with encryption".
Нужен код что-бы их всех за один присест.

Есть:
create procedure sp_xyz
@arg int
as
select 1
go

нужно:
create procedure sp_xyz
@arg int
with encryption
as
select 1
go

Целый день вчера угробил.

ColdFusion

voron.308
Есть 1000 + "stored procedures" , в каждую нужно добавить "with encryption".
Нужен код что-бы их всех за один присест.

Есть:
create procedure sp_xyz
@arg int
as
select 1
go

нужно:
create procedure sp_xyz
@arg int
with encryption
as
select 1
go

Целый день вчера угробил.

Кхххмммм... Дай подумать, посоветоваться.

Вопрос. Cтрока @arg int везде одинаковая? Или нет?

А что, задачу нужно решать только средствами SQL Server'a?

voron.308

В том то и дело что нет. Нужно как-то нужно пропарсать боди процедуры, начать с "create stored procedure", потом найти последнюю позицию последнего аргумента (если они вообще есть).

Типа:
@first_argument int,
@last_argument char(10)
нужна позиция последней скобки или

@first_argument char(10),
@last_argument int
нужна позиция последней 't' или

@first_argument char(10),
@last_argument smalldatetime
нужна позиция последней 'e'

и тд.

Tолько после неё искать "as" OR "AS" & реплэйс её с "WITH ENCRYPTION AS".

А как или на чём ещё можно решить я не знаю.

Alex9x19

напиши небольшую програмку
read file
когда line == 'as' первый раз
перед as добавь line'with encryption'
write line в новый file

ponchik

- читаешь procedure
- все линии начинаюшиеся с @ засовываешь в array (каждая линия - ет елемент array)
- берешь последнии елемент и добавляешь в конце че надо

йет если не все линии в SQL не начинаются с @, хрен вас там разберёт датабeйсников. Надо взять книгу посмотреть

voron.308

Имееш в виду заскриптать все "процедуры" в один техтовой файл (это можно) а потом искать каждую линию где есть "as" и больше ничего, и на этой линии заменить одно на другое?

Это наверное можно в "Visual Basic", а я его не знаю.
Помоги если не лень.

Alex9x19
напиши небольшую програмку
read file
когда line == 'as' первый раз
перед as добавь line'with encryption'
write line в новый file

voron.308

Не очень себе это представляю, но помазгую.

ponchik
- читаешь procedure
- все линии начинаюшиеся с @ засовываешь в array (каждая линия - ет елемент array)
- берешь последнии елемент и добавляешь в конце че надо

йет если не все линии в SQL не начинаются с @, хрен вас там разберёт датабeйсников. Надо взять книгу посмотреть

ponchik

Send me a couple of sample procedures and I'll try to take a look at them over the weekend, if time premits.

Alex9x19

2 voron.308

в профаиле правильное мыло?
могу скинут' програмку

voron.308

atg@atgonline.com

Спасибо


Alex9x19
2 voron.308

в профаиле правильное мыло?
могу скинут' програмку

Alex9x19

послал

voron.308


Пошло как по маслу, спасибо большое.
Куда бутылку посылать?

Alex9x19
послал

Petrvmv

Бутылку поздновато, мы тут уже...
привет из далекой \\\\\\Молдавии 😛

ColdFusion

Ну вы МОНСТРЫ!!! Я в ШОКЕ! Только отвернись киношку посмотреть, а они тут уже ТАКОГО наворотили!!!

Alex9x19 -

voron.308

Можно сурс коде посмотреть? Проблема с "upper/lower case"

ColdFusion
Ну вы МОНСТРЫ!!! Я в ШОКЕ! Только отвернись киношку посмотреть, а они тут уже ТАКОГО наворотили!!!

Alex9x19 -

Alex9x19

voron.308
Пошло как по маслу, спасибо большое.
Куда бутылку посылать?

Наздоровье 😊
Мне как раз делат было нечего целый час
А насче путылки надо подумат 😀

PS а сколько времени ранало?

voron.308

Откуда земляк?

Petrvmv
Бутылку поздновато, мы тут уже...
привет из далекой \\\\\\Молдавии 😛

Alex9x19

voron.308
Можно сурс коде посмотреть? Проблема с "upper/lower case"

code можно, но у меня на работе нет винзипа, ест' кремлин
если у тебя ест' пошлу,
upper добавил

voron.308

Секунду/Две, 1257 процедур, сохранил ка один филе, загрузил в твою программу ... зум, готово. Спасибо ещё раз.

Alex9x19

Наздоровье 😊
Мне как раз делат было нечего целый час
А насче путылки надо подумат 😀

PS а сколько времени ранало?

Alex9x19

voron.308
Секунду/Две, 1257 процедур, сохранил ка один филе, загрузил в твою программу ... зум, готово. Спасибо ещё раз.

Наздоровье, только все файлы .sql нужно было положить в один фолдер и усе.
а програмку в другой фолдер, желательно пустой - для новых файлов.

Ну если сработало то ладно. 😊