Въпрос за SQL-DMO - SQL Server 2000

2 отговора 220 прегледа
#1

Въпрос за SQL-DMO - SQL Server 2000

Значи - накратко - SQL Server 2000, искам да търся по ключова дума в стъпки от DTS - става дума за ExecuteSQL tasks - т.е. T-SQL скриптове. Не искам да ползвам VB, VBA или каквото и да е друго освен T-SQL. Използвам SQL-DMO за да създам обект DTS.Package2, да заредя DTS от сървъра и да чета Properties на неговите Tasks. Дотук всичко е нормално, обаче когато чета Property-то SQLStatement в променливата @Property_text:

SET @property = 'Tasks(' + rtrim(cast(@i as char)) +').Properties(SQLStatement).value'
EXEC @rc = sp_OAGetProperty @Pkg, @property, @Property_text OUT

...се сблъсквам с ограничението за 8000 за VARCHAR променлива. А някои от стъпките имат >8000 символа текст

Отговор
в отговор на DTS #2

Re: Въпрос за SQL-DMO - SQL Server 2000

Zdravei,

ako beshe napisal zelia syntax, shteche da e po jasno....

"@i as char" pri teb kakvo e? Numerazia na Tasks-Stapki? ako e taka, bich predpolojila ot prav pogled:

SET @property = 'Tasks(' + CAST(@i as varchar(4)) +').Properties.value' -----primerno pri 4etiri stapki...

Отговор
в отговор на nea #3

Re: Въпрос за SQL-DMO - SQL Server 2000

Здравей,

Проблемът не е в номерацията и цикъла, а в променливата, в която трябва да влезе резултата - @Property_text

Отговор