- SQL code
/*------------------------declare @tblName varchar(255) -- 表名 declare @SortfldName varchar(255) -- 排序字段名 declare @oldId int -- 需要移动的IDdeclare @newId int -- 需要移动对比的ID/***************************/set @oldId=10set @tblName='dbo.Mgc_ProjectIntroduce'/***************************/select top 1 @newId= ProjectIntroduce_ID from @tblNamewhere ProjectIntroduce_Sort >10order by ProjectIntroduce_Sort ascprint @oldIdprint @newId------------------------*/消息 1087,级别 15,状态 2,第 13 行必须声明表变量 "@tblName"。
------解决方案--------------------
- SQL code
--像表,列作為變量時,要用動態拼結後執行declare @oldId int,@tblName nvarchar(100)set @oldId=10set @tblName='dbo.Mgc_ProjectIntroduce'declare @sql nvarchar(1000)/***************************/select @sql=N'select top 1 @newId= ProjectIntroduce_ID from '+@tblName+N' where ProjectIntroduce_Sort >10order by ProjectIntroduce_Sort asc'exec sp_executesql @sql,N'@newId int output',@newId outputprint @oldIdprint @newId
------解决方案--------------------
------解决方案--------------------
------解决方案--------------------
把注释的部分放出来就好了!