删除名称中带破折号的表格

时间:2013-01-30 12:39:20

标签: sql-server tsql

我需要删除所有名称格式为'% - % - % - % - %'的表格。到目前为止,我发现最好的方法是分两步完成:

  1. 通过调用下面的请求生成删除请求

    SELECT'DROP TABLE'+ REPLACE(TABLE_NAME,' - ',NCHAR(8211))FROM information_schema.tables其中TABLE_NAME喜欢'% - % - % - % - %'ORDER BY TABLE_NAME

  2. 运行删除请求。

  3. 不幸的是,第2步不起作用。即使我REPLACE(TABLE_NAME, '-', NCHAR(8211)),我仍然会得到Msg 102, Level 15, State 1, Line 1 Incorrect syntax near '0'.等等。邮件中有0个appreas,因为第一行删除请求是DROP TABLE 0df78d48–c718–49be–ab55–5f158ebdd64c–results

    你可以帮忙吗?谢谢!

1 个答案:

答案 0 :(得分:5)

在表名周围放置方括号应该可以得到你想要的结果。

示例:

DROP TABLE [0df78d48–c718–49be–ab55–5f158ebdd64c–results]