如果表存在SQL,则删除行
我有一个脚本,使用DROP TABLE IF EXISTS删除一些表的负载,这是有效的。
在这个脚本中还有一个删除操作,用于从另一个表中删除我不管理的行。 这个表可能存在也可能不存在。在尝试删除一行之前,有没有任何检查表存在?
这需要适用于MYSQL和SQLServer
谢谢Alex
要检入SQL SERVER,
IF (EXISTS (SELECT * FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA = 'TheSchema' AND TABLE_NAME = 'TheTable'))
BEGIN
--Do Stuff
END
检入mysql:
你只需数数:
SELECT COUNT(*)
FROM information_schema.tables
WHERE table_schema = '[database name]'
AND table_name = '[table name]';
这一个删除行,并不抱怨,如果它不能。
DELETE IGNORE FROM table WHERE id=1
来源于此。
IF EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[TABLE_NAME]') AND type in (N'U'))
链接地址: http://www.djcxy.com/p/94445.html