这是书上的例子:把表'customers的字段contact_title重命名为:title
EXEC sp_rename 'customers.[contact_title]', 'title', 'COLUMN' //正确的
现在我要把contact_title和title改为参数,怎么改?

解决方案 »

  1.   

    我这样改有错:
    exec('EXEC sp_rename ''Role_user.['+@name_old+']'', '''+@name_new+'', ''COLUMN'')
      

  2.   

    这样:
    exec('EXEC sp_rename ''Role_user.['+ @name_old + '''],''' + @name_new + ''', ''COLUMN''')
      

  3.   

    例如:
    declare @oldname sysname,@newname sysname
    set @oldname = 'contact_title'
    set @newname = 'title'
    EXEC('exec sp_rename ''customers.[' + @oldname + '''],''' + @newname + ''',''COLUMN''')
      

  4.   

    抱歉,更正一下:
    这样
    exec('EXEC sp_rename ''Role_user.['+ @name_old + ']'',''' + @name_new + ''',''COLUMN''')例如:
    declare @oldname sysname,@newname sysname
    set @oldname = 'contact_title'
    set @newname = 'title'
    EXEC('exec sp_rename ''customers.[' + @oldname + ']'',''' + @newname + ''',''COLUMN''')