日期:2014-05-17 浏览次数:20778 次
/*------------------------ declare @tblName varchar(255) -- 表名 declare @SortfldName varchar(255) -- 排序字段名 declare @oldId int -- 需要移动的ID declare @newId int -- 需要移动对比的ID /***************************/ set @oldId=10 set @tblName='dbo.Mgc_ProjectIntroduce' /***************************/ select top 1 @newId= ProjectIntroduce_ID from @tblName where ProjectIntroduce_Sort >10 order by ProjectIntroduce_Sort asc print @oldId print @newId ------------------------*/ 消息 1087,级别 15,状态 2,第 13 行 必须声明表变量 "@tblName"。
--像表,列作為變量時,要用動態拼結後執行 declare @oldId int,@tblName nvarchar(100) set @oldId=10 set @tblName='dbo.Mgc_ProjectIntroduce' declare @sql nvarchar(1000) /***************************/ select @sql=N'select top 1 @newId= ProjectIntroduce_ID from '+@tblName+N' where ProjectIntroduce_Sort >10 order by ProjectIntroduce_Sort asc' exec sp_executesql @sql,N'@newId int output',@newId output print @oldId print @newId
------解决方案--------------------