我需要编写扫描表My_table中数据的过程Textprocedure (Table_txt varchar(200))
例如:我有桌子
My_table (Id int, Name varchar(200))
我需要像输出文本(脚本)这样的程序执行结果
DELETE FROM My_table
INSERT INTO My_table (Id, Name) values (1, 'Tropico')
INSERT INTO My_table (Id, Name) values (2, 'Bus')
INSERT INTO My_table (Id, Name) values (4, 'Africa')
INSERT INTO My_table (Id, Name) values (8, 'Arrival')
我可以用手术吗?我做了
CREATE TABLE My_table (Id int, Name varchar(200))
DELETE FROM My_table
INSERT INTO My_table (Id, Name) values (1, 'Tropico')
INSERT INTO My_table (Id, Name) values (2, 'Bus')
INSERT INTO My_table (Id, Name) values (4, 'Africa')
INSERT INTO My_table (Id, Name) values (8, 'Arrival')
ALTER PROCEDURE Textprocedure (@Table_txt varchar(200))
AS
BEGIN
DECLARE @Id1 NVARCHAR(40)
DECLARE @Result NVARCHAR(4000)
SET @Result = ''
SELECT @Result = 'INSERT INTO '+ CAST(@Table_txt AS NVARCHAR(250)) + --@Result
+'() values ' + CAST([name] AS NVARCHAR(250)) + ' ' FROM My_table --where Id<5
PRINT (@Result)
END
GO
EXEC Textprocedure My_table
我的输出:INSERT INTO My_table() values Arrival
但我需要多行结果。我可以循环吗?我需要像id,name这样的打印表参数吗?但是我怎么能选择它们呢?
答案 0 :(得分:0)
选中此项以生成插入语句:
答案 1 :(得分:0)
您可以使用带参数的动态sql然后打印或返回结果。