这句话么不对?exec('alter table Role_user alter column '+@Tag+' nvarchar(50) null')怎样改?
错误:
服务器: 消息 4924,级别 16,状态 1,行 1
ALTER TABLE ALTER COLUMN 失败,因为列 'Roledh' 在表 'Role_user' 中不存在。

解决方案 »

  1.   

    exec('alter table Role_user add column '+@Tag+' nvarchar(50) null')
      

  2.   

    当然这个字段名在表中是不存在的不存在的话,就要添加,而不是alter
      

  3.   

    就只有先DEL 然后再ADD,好,谢谢!
      

  4.   

    如果是要修改列名
    需要用sp_rename来实现
    alter是不能修改字段名的
      

  5.   

    参数怎么写:EXEC sp_rename 'Role_user.[@Tag_old]', '@Tag_new', 'COLUMN'
      

  6.   

    try:
    exec('EXEC sp_rename ''Role_user.'+[@Tag_old]+''', '''+@Tag_new+''', ''COLUMN''')