0
我想在不同的5个数据库中执行脚本。如何在执行特定查询之前检查mysql中的空值条件?
SET @CONSTRAINT_NAME = (SELECT CONSTRAINT_NAME
FROM INFORMATION_SCHEMA.KEY_COLUMN_USAGE
WHERE REFERENCED_TABLE_NAME = 'StudentMaster'
AND TABLE_NAME = 'StudentSubjectMa'
AND CONSTRAINT_SCHEMA = DATABASE());
现在,我想在这里检查,如果@CONSTRAINT_NAME
是NOT NULL
则只有下面的声明应被执行。可能吗?
SET @DROP_CONSTRAINT_SQL = CONCAT("ALTER TABLE StudentSubjectMarksMap
DROP FOREIGN KEY `", @CONSTRAINT_NAME , "`");
PREPARE DROP_CONSTRAINT_SQL_STMT FROM @DROP_CONSTRAINT_SQL;
EXECUTE DROP_CONSTRAINT_SQL_STMT;
DROP PREPARE DROP_CONSTRAINT_SQL_STMT;
嗨@vhu,谢谢,但它只能在函数()或过程()中使用。我只需要简单的语法。我不想在外部调用函数。 –
@vishal:你只是在运行SQL脚本,还是从PHP或Bash控制它? – vhu
我想只运行SQL脚本。 –