如何执行我的选择查询的结果。下面的查询为我提供了一些SQL语句作为结果。我想执行的语句,如何做到这一点?所有这些都在SQL Sever Management Studio中执行。执行选择语句的结果
查询:
SELECT 'UPDATE Rolecopy SET PartofFT = ''' + R2.PlayedbyOT + ''', OriginalOT = ''' + R.PlayedbyOT + ''' WHERE RoleNo = ' + CAST(R.RoleNo AS VARCHAR) + CHAR(13)
FROM Role R INNER JOIN Role R2
ON R.PartofFT = R2.PartofFT AND R.RoleNo <> R2.RoleNo
WHERE EXISTS (
SELECT PG.RoleNo
FROM V_PurposeGrouping PG
WHERE R.PartofFT = PG.PartofFT
AND R.RoleNo <> PG.RoleNo
)
结果:
UPDATE Rolecopy SET PartofFT = 'Student', OriginalOT = 'Teacher' WHERE RoleNo = 5.00
UPDATE Rolecopy SET PartofFT = 'Project', OriginalOT = 'Teacher' WHERE RoleNo = 8.00
UPDATE Rolecopy SET PartofFT = 'Project', OriginalOT = 'description' WHERE RoleNo = 10.00
UPDATE Rolecopy SET PartofFT = 'Student', OriginalOT = 'Project' WHERE RoleNo = 15.0
我想看看动态SQL。确定你可以使用exec(@sql),但是这对任何sql注入都是开放的。 – DForck42 2011-05-17 18:27:51
您可以使用'exec'语句:EXEC(@mySql) – Tejs 2011-05-17 18:22:18
不起作用,因为我认为引号是 消息203,级别16,状态2,过程SP_Grouping,行28 名称''不是一个有效的标识。 – Bas 2011-05-17 19:25:17