重命名SQL表test ['] 2

时间:2011-10-16 16:12:43

标签: sql sql-server-2008-r2

有谁能告诉我如何重命名这张桌子?

test[']2

我在每个组合中都尝试了EXEC sp_rename 'test['']2', 'abc' ..但它失败了Syntax error parsing SQL identifier

我试过以下

EXEC sp_rename 'test['']2', 'abc';
EXEC sp_rename 'test[]'']2', 'abc';
EXEC sp_rename '[test['']2]', 'abc';
EXEC sp_rename '[test[]'']2]', 'abc';
EXEC sp_rename [test[]']2], 'abc';
EXEC sp_rename [test[']2], 'abc';

还有其他任何想法吗?


如果您遇到同样的问题并希望安全地重命名表,这里是代码的链接

它基于使用从sys.tables获取的表的object_id,但您可以轻松地更改代码以使用表名

Rename MSSQL Table

3 个答案:

答案 0 :(得分:1)

发现它!

我错过了一个组合。答案是

exec sp_rename '[test ['']] 2]', 'abc';

答案 1 :(得分:1)

试试这个:

exec sp_rename '"test['']"', 'abc'

答案 2 :(得分:-1)

您可以查看QUOTED_IDENTIFIER设置