一直在寻找近一个小时,我不敢相信我还没有弄清楚如何做到这一点。我发现了这个:
仅当它存在于 mysql server 5.0 中时才删除约束
但是提供的链接没有足够的信息让我到达那里..有人可以提供一个带有代码的例子吗?
更新
抱歉,我在最初的问题中并不清楚,但我希望有一种方法可以在 SQL 中做到这一点,而不是利用任何应用程序编程。
一直在寻找近一个小时,我不敢相信我还没有弄清楚如何做到这一点。我发现了这个:
仅当它存在于 mysql server 5.0 中时才删除约束
但是提供的链接没有足够的信息让我到达那里..有人可以提供一个带有代码的例子吗?
更新
抱歉,我在最初的问题中并不清楚,但我希望有一种方法可以在 SQL 中做到这一点,而不是利用任何应用程序编程。
示例 php 代码:
function removeFK(PDO $pdo, $dbName, fkName)
{
echo "Removing foreign key '$fkName' from database: $dbName\t";
$exists = $pdo->query("
SELECT TRUE
FROM INFORMATION_SCHEMA.TABLE_CONSTRAINTS
WHERE CONSTRAINT_TYPE = 'FOREIGN KEY'
AND TABLE_SCHEMA = '$dbName'
AND CONSTRAINT_NAME = '$fkName'
")->fetchColumn();
if ($exists === false) {
echo " [SKIPPING] (FK does not exist)\n";
return false;
}
$pdo->query("USE $dbName");
$pdo->query("
ALTER TABLE intelligence_webpage_has_region_keyword
DROP FOREIGN KEY $fkName");
echo "[OK]\n";
return true;
}