DECLARE @ProjectID VARCHAR(4000)
DECLARE @NEWID INT
DECLARE @SQL VARCHAR(4000)
SET @ProjectID='2,3'
SET @NEWID=2
SET @ProjectID = 'INSERT INTO BM_DrawingToProject (ProjectID, DrawingID) VALUES ('''+ REPLACE(@ProjectID, ',', ''', '+ RTRIM(LTRIM(STR(@NewID))) +') INSERT INTO BM_DrawingToProject (ProjectID, DrawingID) VALUES (''')+''', '+ RTRIM(LTRIM(STR(@NewID))) +')'
SET @SQL = @ProjectIDPRINT @SQLEXEC @SQL上述SQL解释通过,但执行却不行,提示:The name 'INSERT INTO BM_DrawingToProject (ProjectID, DrawingID) VALUES ('2', 2) INSERT INTO BM_DrawingToProject (ProjectID, DrawingID) VALUES ('3', 2)' is not a valid identifier.单独执行INSERT INTO BM_DrawingToProject (ProjectID, DrawingID) VALUES ('2', 2) INSERT INTO BM_DrawingToProject (ProjectID, DrawingID) VALUES ('3', 2)又是可以的,郁闷!
DECLARE @NEWID INT
DECLARE @SQL VARCHAR(4000)
SET @ProjectID='2,3'
SET @NEWID=2
SET @ProjectID = 'INSERT INTO BM_DrawingToProject (ProjectID, DrawingID) VALUES ('''+ REPLACE(@ProjectID, ',', ''', '+ RTRIM(LTRIM(STR(@NewID))) +') INSERT INTO BM_DrawingToProject (ProjectID, DrawingID) VALUES (''')+''', '+ RTRIM(LTRIM(STR(@NewID))) +')'
SET @SQL = @ProjectIDPRINT @SQLEXEC @SQL上述SQL解释通过,但执行却不行,提示:The name 'INSERT INTO BM_DrawingToProject (ProjectID, DrawingID) VALUES ('2', 2) INSERT INTO BM_DrawingToProject (ProjectID, DrawingID) VALUES ('3', 2)' is not a valid identifier.单独执行INSERT INTO BM_DrawingToProject (ProjectID, DrawingID) VALUES ('2', 2) INSERT INTO BM_DrawingToProject (ProjectID, DrawingID) VALUES ('3', 2)又是可以的,郁闷!
--try:DECLARE @ProjectID VARCHAR(4000)
DECLARE @NEWID INT
DECLARE @SQL VARCHAR(4000)
SET @ProjectID='2,3'
SET @NEWID=2
SET @ProjectID = 'INSERT INTO BM_DrawingToProject (ProjectID, DrawingID) VALUES ('''+ REPLACE(@ProjectID, ',', ''', '+ RTRIM(LTRIM(STR(@NewID))) +'); INSERT INTO BM_DrawingToProject (ProjectID, DrawingID) VALUES (''')+''', '+ RTRIM(LTRIM(STR(@NewID))) +')'
SET @SQL = @ProjectID exec(@sql)
执行字符串:EXEC [ UTE ] ( { @string_variable | [ N ] 'tsql_string' } [ + ...n ] )
Microsoft的语法就是这样的.