gpt4 book ai didi

sql-server - 一个非常简单的T-SQL语句语法错误

转载 作者:行者123 更新时间:2023-12-03 08:27:13 25 4
gpt4 key购买 nike

我只是想通过以下语句查询数据库中是否存在任何表:

IF EXISTS(SELECT 1 FROM db_name.sys.tables WHERE name = 'table_name')

我收到语法错误

Incorrect syntax near ')'



怎么了?如何检查我的数据库中是否存在表。

最佳答案

如果条件匹配,SQL中的IF condition需要执行一个语句或块(即“then”语句或块),并且可以选择添加“else”语句/块,如下所示:

IF EXISTS(SELECT 1 FROM mydbname.sys.tables WHERE name = 'MyTable')
PRINT 'FOUND';
ELSE
PRINT 'NOT FOUND';

如果您需要在'then'或'else'中执行多个语句,则将它们包装在以BEGIN/END分隔的块中。

请注意,如果您来自FP背景,则 IF语句是旧式副作用分支样式,而不是条件/模式匹配样式,即您不能这样做
DECLARE @isFound BIT;
SET @isFound = IF EXISTS(SELECT 1 FROM mydbname.sys.tables WHERE name ='MyTable')
-- ** syntax error

关于sql-server - 一个非常简单的T-SQL语句语法错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48135012/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com