我有两行 SQL 代码可以动态创建两个表,我需要执行类似的操作
IF TABLE EXISTS
DROP IT AND CREATE IT AGAIN
ELSE
CREATE IT
我的台词如下
CREATE TABLE ##CLIENTS_KEYWORD(client_id int)
CREATE TABLE ##TEMP_CLIENTS_KEYWORD(client_id int)
如何在我的程序中将这个概念应用于这两个表?
最佳答案
从 SQL Server 2016 开始,您可以使用
DROP TABLE IF EXISTS ##CLIENTS_KEYWORD
在以前的版本中您可以使用
IF OBJECT_ID('tempdb..##CLIENTS_KEYWORD', 'U') IS NOT NULL
/*Then it exists*/
DROP TABLE ##CLIENTS_KEYWORD
CREATE TABLE ##CLIENTS_KEYWORD
(
client_id INT
)
您还可以考虑截断表,而不是删除并重新创建。
IF OBJECT_ID('tempdb..##CLIENTS_KEYWORD', 'U') IS NOT NULL
TRUNCATE TABLE ##CLIENTS_KEYWORD
ELSE
CREATE TABLE ##CLIENTS_KEYWORD
(
client_id INT
)
关于sql - 删除临时表(如果存在),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7259285/