相关疑难解决方法(0)

查询以查找外键

我有一个数据库,我需要删除一些外键,但我事先不知道外键是否仍然存在.

我找到了一些存储过程(http://forums.mysql.com/read.php?97,218825,247526),但我不想为此创建存储过程.

我试图在存储过程中使用查询,但是我使用"IF EXISTS(SELECT NULL FROM等等)得到错误...

我只能IF EXISTS在存储过程中使用吗?


现在,我唯一可以运行的是

SELECT * FROM information_schema.TABLE_CONSTRAINTS 
WHERE information_schema.TABLE_CONSTRAINTS.CONSTRAINT_TYPE = 'FOREIGN KEY' 
AND information_schema.TABLE_CONSTRAINTS.TABLE_SCHEMA = 'myschema'
AND information_schema.TABLE_CONSTRAINTS.TABLE_NAME = 'mytable';
Run Code Online (Sandbox Code Playgroud)

我也尝试过这个

IF EXISTS (SELECT NULL FROM information_schema.TABLE_CONSTRAINTS WHERE CONSTRAINT_SCHEMA = DATABASE() AND CONSTRAINT_NAME = parm_key_name) THEN
(...) do something (...)
END IF; 
Run Code Online (Sandbox Code Playgroud)

但我得到了 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' at …

mysql foreign-keys

8
推荐指数
2
解决办法
1万
查看次数

重置自动增量有什么危害吗?

我有1亿行,而且它太大了.我看到很多差距.(因为我删除,添加,删除,添加.)

我想用自动增量填补这些空白.如果我重置它..有任何harM吗?

如果我这样做,它会填补空白吗?:

mysql> ALTER TABLE tbl AUTO_INCREMENT = 1;
Run Code Online (Sandbox Code Playgroud)

mysql database auto-increment

6
推荐指数
3
解决办法
1657
查看次数

标签 统计

mysql ×2

auto-increment ×1

database ×1

foreign-keys ×1