表变量问题

DECLARE @TableVar TABLE
(a int,
b int)
DECLARE @SQL varchar(100)
SET @SQL='INSERT INTO @TableVar VALUES(3,4)'
EXEC(@SQL)
上面的语句在执行时报"服务器: 消息 137,级别 15,状态 2,行 1 必须声明变量 '@TableVar'。"错误,不知怎么样在动态SQL语句中操作表变量?
---------------------------------------------------------------

DECLARE @SQL varchar(100)
select @sql = 'create table '+@TableVar +'(a int,b int)'
execute(@sql)
select @SQL='INSERT INTO @TableVar VALUES(3,4)'
EXEC(@SQL)

---------------------------------------------------------------

DECLARE @TableVar TABLE
(a int,
b int)
INSERT INTO @TableVar VALUES(3,4)
就可以了,table类型只能用于select,insert语句中

Published At
Categories with 数据库类
Tagged with
comments powered by Disqus