如何在 SQL SERVER 用变量作表名 insert @table_name

Wonny 2000-04-17 05:01:00
我在数据库中用年号作表名,如 user2000(明年将自动生成user2001),我希望在基本数据表 BasicUserData 中添加 INSERT 和 DELETE 触发器
declare @table_name varchar(20),
select @table_name='user'+datename(year,getdate())
如何才能实现 insert @table_name ...-------> insert user2000(或 user2001)

谢谢!
...全文
94 点赞 收藏 4
写回复
4 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
hot2000 2001-06-12
我现在也遇到这个问题,谁帮忙解答一下
回复
skt985 2001-06-01
48093关注!
回复
beach 2001-01-06
>>
回复
jy 2000-04-30
怎么会发贴子到这里?解答如下:
不能。
可以使用替代方案,要求整个查询语句的字符数量在255之内(SQL Server 6.5以下,记得不太清楚,可自行确认):

declare @szSQL varchar(255)
select @szSQL = 'seelct ' + @table_name + ...

EXEC(@szSQL)

-----------------------------------
ok?!!
回复
相关推荐
发帖
MS-SQL Server
创建于2007-09-28

3.3w+

社区成员

MS-SQL Server相关内容讨论专区
申请成为版主
帖子事件
创建了帖子
2000-04-17 05:01
社区公告
暂无公告