我正在使用Sybase根据以前的内容(使用旧的ORM)将一些新行插入到表中,并且想知道是否有一种方法可以执行生成的SQL而无需复制和粘贴?
我使用
之类的东西SELECT 'INSERT INTO Mapper VALUES (''' + ClassName + ''', ''NewObject'', ''NewId'', '''+convert(varchar(10), max(Sequence)+1)+''')'
FROM Mapper WHERE ClassName IN ('James', 'Steve') GROUP BY ClassName
对于像
这样的表格ClassName | ObjectName | ID | Sequence
输出如下结果:
INSERT INTO Mapper VALUES ('James', 'NewObject', 'NewId', '38')
INSERT INTO Mapper VALUES ('Steve', 'NewObject', 'NewId', '24')
现在是否可以运行这个经过处理的SQL而无需在Sybase中使用SQL(使用Aqua Data Studio)进行复制和粘贴?
目前我只是将其复制并粘贴回同一窗口
谢谢,
-
请注意,如果这有任何不同,那么它将是2000多行
P.S。我刚刚注意到我用了很多这个词,抱歉^ _ ^
答案 0 :(得分:0)
您可以在语句中使用CURSOR
,使用EXEC
命令执行每行中生成的SQL。
我认为这是一个一次性的任务,而不是一个持续的过程,这就是为什么你不使用INSERT table SELECT....