Форум: "Прочее";
Текущий архив: 2019.02.24;
Скачать: [xml.tar.bz2];
Внизmssql, результат хранимки, заранее не извесный рекордсет Найти похожие ветки
← →
ВладОшин © (2016-10-25 17:21) [0]пусть некто написал хранимку Proc1
create procedure Proc1
as
SELECT "string1" A, 2 B
я ее использую
declare @T table(A varchar(99), B int)
insert @T exec Proc1
declare @S varchar(max) = ""
select
@S = @S + "A=" + A + "B=" + cast(B as varchar(99) + char(13)+char(10)
from @T
некто изменил Proc1
SELECT "string1" as [A], 2 as [B], 0 as C
у меня все сломалось, и я захотел на будущее обезопаситься
insert #T exec Proc1
declare @S varchar(max) = ""
select
@S = @S + ???
from #T
как далее перебрать колонки?
как сделать что-то вроде
for i:= 0 to DS.FieldCount -1 ..
s := DS.Field.Name + "=" + DS.Field.asstring
← →
ВладОшин © (2016-10-25 17:34) [1]можно так, в принципе -
не временную таблицу, а нормальную делать
@TableName = [уникальное что-то, типа newid()]
@SQL = "insert " + @TableName +" exec Proc1"
exec(@SQL)
через information shema получить столбцы @TableName, сгенерировать новый @SQL
"COLUMN_NAME = " + COLUMN_NAME + 13+10
и опять exec(@SQL)
и не забыть drop @TableName
но могут и побить )
проще никак?
Страницы: 1 вся ветка
Форум: "Прочее";
Текущий архив: 2019.02.24;
Скачать: [xml.tar.bz2];
Память: 0.44 MB
Время: 0.001 c