help me

songyang800323 2003-08-22 05:41:09
如果将一个表名赋给一个变量,用drop table 变量名 为什么出错!
eg: declare @a char(10)
set @a='ii'
drop table @a
ii 为已存在的表
...全文
20 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
happydreamer 2003-08-22
  • 打赏
  • 举报
回复
应该用动态sql做
hjb111 2003-08-22
  • 打赏
  • 举报
回复
declare @a char(10)
set @a='ii'
exec('drop table '+@a)
txlicenhe 2003-08-22
  • 打赏
  • 举报
回复
declare @a char(10)
set @a='ii'
Exec('drop table ' + @a)

or

declare @a char(10)
declare @sql varchar(200)
set @a='ii'
set @sql = 'drop table ' + @a
exec(@sql)


songyang800323 2003-08-22
  • 打赏
  • 举报
回复
thank you
CrazyFor 2003-08-22
  • 打赏
  • 举报
回复
declare @a char(10)
set @a='ii'
exec('drop table '+@a)
zjcxc 2003-08-22
  • 打赏
  • 举报
回复
不允许这种语法.

改成这样就可以了.:
declare @a char(10)
set @a='ii'
exec('drop table '+@a)

22,206

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧