用alter table 添加字段的时候,字段名是否能使用变量呢?

iamsoloist 2004-07-26 04:52:32
declare @a varchar(255)
set @a='col1'

CREATE TABLE doc_exa ( column_a INT)
GO
ALTER TABLE doc_exa ADD @a VARCHAR(20) NULL
GO
EXEC sp_help doc_exa
GO
DROP TABLE doc_exa
GO

----------------
提示出错,如果将ALTER TABLE doc_exa ADD @a VARCHAR(20) NULL 中的@a换成col1就可以,请大家指教,谢谢
...全文
320 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
eshowsoft 2004-11-10
  • 打赏
  • 举报
回复
up
iamsoloist 2004-07-26
  • 打赏
  • 举报
回复
搞定,谢谢大家:)
WangZWang 2004-07-26
  • 打赏
  • 举报
回复
CREATE TABLE doc_exa ( column_a INT)
GO
declare @a varchar(255)
set @a='col1'
Exec('ALTER TABLE doc_exa ADD '+@a+' VARCHAR(20) NULL ')
GO
EXEC sp_help ypatvisit
GO
DROP TABLE doc_exa
viptiger 2004-07-26
  • 打赏
  • 举报
回复
declare @str varchar(100)
set @str = 'ALTER TABLE doc_exa ADD ' + @a + ' VARCHAR(20) NULL'

exec @str


---OK 啦
CSDMN 2004-07-26
  • 打赏
  • 举报
回复
CREATE TABLE doc_exa ( column_a INT)
GO

declare @a varchar(255)
set @a='col1'
exec('ALTER TABLE doc_exa ADD '+@a+' VARCHAR(20) NULL')
GO
EXEC sp_help doc_exa
GO
DROP TABLE doc_exa
GO
CSDMN 2004-07-26
  • 打赏
  • 举报
回复
declare @a varchar(255)
set @a='col1'

CREATE TABLE doc_exa ( column_a INT)
GO
exec('ALTER TABLE doc_exa ADD '+@a+' VARCHAR(20) NULL')
GO
EXEC sp_help doc_exa
GO
DROP TABLE doc_exa
GO

34,594

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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