我的存储过程出错
Error in my stored procedure
我创建了一个存储过程如下:
create procedure [dbo].[ModifCodMedecin] @Table nvarchar(10),@Code nvarchar(7) as
DECLARE @rqt as NVARCHAR(4000)
SET @rqt = 'UPDATE' + @Table + 'SET '+ @Code + ' = Med.New_Code_exploitation from ' + @Table +
' inner join Medecin_New Med on ' + @Table + '.' + @Code + ' = Med.[Ancien_Code])'
exec (@rqt)
当我执行上述时,产生了一个错误:
ModifCodMedecin 'Table','code'
Incorrect syntax near '='.
试试这个:
CREATE PROCEDURE [dbo].[ModifCodMedecin] @Table NVARCHAR(10)
,@Code NVARCHAR(7)
AS
DECLARE @rqt AS NVARCHAR(4000)
SET @rqt = 'UPDATE ' + @Table
+ ' SET ' + @Code
+ ' = Med.New_Code_exploitation from ' + @Table
+ ' inner join Medecin_New Med on ' + @Table + '.' + @Code
+ ' = Med.[Ancien_Code]'
EXEC (@rqt)
你少了几个空格,一个在 UPDATE
之后,一个在 SET
之前。以及末尾的附加括号。
我创建了一个存储过程如下:
create procedure [dbo].[ModifCodMedecin] @Table nvarchar(10),@Code nvarchar(7) as
DECLARE @rqt as NVARCHAR(4000)
SET @rqt = 'UPDATE' + @Table + 'SET '+ @Code + ' = Med.New_Code_exploitation from ' + @Table +
' inner join Medecin_New Med on ' + @Table + '.' + @Code + ' = Med.[Ancien_Code])'
exec (@rqt)
当我执行上述时,产生了一个错误:
ModifCodMedecin 'Table','code' Incorrect syntax near '='.
试试这个:
CREATE PROCEDURE [dbo].[ModifCodMedecin] @Table NVARCHAR(10)
,@Code NVARCHAR(7)
AS
DECLARE @rqt AS NVARCHAR(4000)
SET @rqt = 'UPDATE ' + @Table
+ ' SET ' + @Code
+ ' = Med.New_Code_exploitation from ' + @Table
+ ' inner join Medecin_New Med on ' + @Table + '.' + @Code
+ ' = Med.[Ancien_Code]'
EXEC (@rqt)
你少了几个空格,一个在 UPDATE
之后,一个在 SET
之前。以及末尾的附加括号。