SQLServer 2008参数@objname不明确或所声明的@objtype (column)有误解决

环境:SQLServer 2008 R2

问题:当调用存储过程sp_rename出现“参数@objname不明确或所声明的@objtype (column)有误”。

 

解决:

看以下几条命令,如果先执行前两句,再接着执行第三句会出现什么问题?

 

use Test;--使用数据库
sp_rename 'd_s_t.avg_grade','avg_g','column';--d_s_t是表名,avg_grade是原来的列名,avg_g是新的列名
exec sp_rename 'd_s_t.avg_grade','avg_g','column';


对,你说对了。就会报如上所述的错误。

因为你执行第二句以后你原来的列已经更改了名字,而你再使用原来的列当然找不到了。

 

如果再要执行第三句,可以把它改为:

exec sp_rename 'd_s_t. avg_g','avg_g_new','column';

PS:呵呵,这个错误只是由于自己的粗心,所以程序员一定要有颗细致的心。

 

参考资料:

http://topic.csdn.net/u/20080924/10/c6eb8c9f-62d6-4780-b199-58c22e92a2ba.html

你可能感兴趣的:(c,数据库,存储,sqlserver)