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

voron.308 16-04-2004 16:45

Есть 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 16-04-2004 17:06

quote:
Originally posted by 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 16-04-2004 19:09

В том то и дело что нет. Нужно как-то нужно пропарсать боди процедуры, начать с "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 16-04-2004 20:44

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

ponchik 16-04-2004 22:21

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

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

voron.308 16-04-2004 22:28

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

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

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

voron.308 16-04-2004 22:31

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

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

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


ponchik 16-04-2004 22:46

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

Alex9x19 16-04-2004 23:06

2 voron.308

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

voron.308 16-04-2004 23:11

atg@atgonline.com

Спасибо


quote:
Originally posted by Alex9x19:
2 voron.308

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


Alex9x19 16-04-2004 23:32

послал

voron.308 16-04-2004 23:55


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

quote:
Originally posted by Alex9x19:
послал

Petrvmv 17-04-2004 12:10

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

ColdFusion 17-04-2004 12:35

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

Alex9x19 -

voron.308 17-04-2004 01:18

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

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

Alex9x19 -


Alex9x19 17-04-2004 01:18

quote:
Originally posted by voron.308:

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

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

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

voron.308 17-04-2004 01:19

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

quote:
Originally posted by Petrvmv:
Бутылку поздновато, мы тут уже...
привет из далекой \\\\\\Молдавии :P

Alex9x19 17-04-2004 01:27

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


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

voron.308 17-04-2004 02:25

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

quote:
Originally posted by Alex9x19:

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

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


Alex9x19 17-04-2004 10:52

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


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

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