【发布时间】:2013-11-18 18:37:50
【问题描述】:
我是使用内联 sql 的新手,但在关键字“更新”错误附近不断收到不正确的语法。
这是我正在使用的语法,有人可以指出(可能是一个非常非常新手的问题导致了这个问题?)
Declare @MyField As varchar(100)
Declare @Sql As nvarchar(1000)
Create Table #TableNames
(
TableName varchar(50)
)
Insert Into #TableNames(TableName)
Values('Pixel')
Values('HellFire')
Declare curX Cursor for Select TableName from #TableNames
Open curX
Fetch Next from curX Into @MyField
While @@ Fetch_Status <> -1
Begin
Set @Sql = N'(Update (trixieIce.dbo.' + @FieldName + N' Set Shipped = 'Yes' ShippedDate = GetDate() WHERE ShippedDate IS NULL And Shipped IS NULL)'
Exec sp+executesql @SQL
Fetch next from curX into @FieldName
End
Close curX
Deallocate curX
【问题讨论】:
-
“inline sql”是什么意思?您可能是指动态 Sql 吗?
-
你是对的,对不起!
-
不清楚您在这里要做什么。请添加一些解释。
-
添加了更多代码,希望能进一步解释。
-
如果您在循环体内执行
EXEC(@SQL),我目前在下面发布的代码应该可以工作。
标签: sql sql-server tsql sql-server-2000