gpt4 book ai didi

mysql - 检查表是否存在后从表中删除

转载 作者:行者123 更新时间:2023-11-30 22:04:00 27 4
gpt4 key购买 nike

在用 sql 删除行之前,我需要检查表是否存在。我在互联网上尝试了几种方法,这似乎是最常出现的,但它不起作用。

IF OBJECT_ID('mytable', 'N') IS NOT NULL
BEGIN
DELETE FROM table WHERE user_id= :user_id
END

我得到错误:

SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'IF OBJECT_ID('we_image_gallery', 'U') IS NOT NULL DELETE FROM mytable' at line 1 

我需要一个仅使用当前数据库的解决方案,并且我可以指望脚本何时移植到多个系统。

编辑:此查询由 PHP PDO 运行。似乎所有答案都不起作用,是否可能是我的 pdo 或 sql server 中的设置导致了问题?

最佳答案

Using Exists statement to delete data from table:

IF EXISTS(SELECT 1 FROM Your_table WHERE user_id = user_id)
BEGIN
DELETE FROM Your_table WHERE user_id= user_id
END

Delete table from database :

IF EXISTS (SELECT * FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA =
'TheSchema' AND TABLE_NAME = 'TheTable')
BEGIN
--Your delete statement
END

关于mysql - 检查表是否存在后从表中删除,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42358808/

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