mysql查询数据库所有表,删除所有表外键,清空所有表数据
####mysql命令登录数据库
1.mysql -u root -ppassword
2.mysql -u root -p
Enter password:****提示输入密码
3.mysql -h localhost -u root -ppassword
4.mysql -h 127.0.0.1 -u root -ppassword
5.-p参数和密码中间不能有间隔
####mysql数据库信息查看
1.show databases;查看数据库
2.use [数据库名] ;使用xx数据库
3.CREATE DATABASE [数据库名];创建一个数据库
4.show tables;查看当前库里的表
5.CREATE TABLE [表名]
([字段名] [类型], [字段名] [类型]);
6.DESCRIBE [表名] ;显示表结构
7.source d:/mysql.sql; 导入sql文件
##########mysql查询某个库所有表的外键生成删除外键sql
SELECT
CONCAT('ALTER TABLE ',TABLE_SCHEMA,'.',TABLE_NAME,' DROP FOREIGN KEY ',CONSTRAINT_NAME,' ;')
FROM
information_schema.TABLE_CONSTRAINTS c
WHERE
c.TABLE_SCHEMA='db_rule_dto_test' AND c.CONSTRAINT_TYPE='FOREIGN KEY';
##########mysql生成某个库清空所有表的sql
SELECT
CONCAT('TRUNCATE TABLE ',TABLE_SCHEMA,'.',TABLE_NAME,' ;')
FROM
information_schema.TABLE_CONSTRAINTS c
WHERE
c.TABLE_SCHEMA='db_rule_dto_test';
-- 禁用外键约束
SET FOREIGN_KEY_CHECKS = 0
-- 启用外键约束
SET FOREIGN_KEY_CHECKS = 1;
由于FOREIGN_KEY_CHECKS是基于session的,当关闭了session重新建立连接,这个变量就会恢复默认值,
也就是开启外键约束,当然我们也可以全局的FOREIGN_KEY_CHECKS变量。
SET GLOBAL FOREIGN_KEY_CHECKS = 0;
生成批量操作表的sql
SELECT
CONCAT('[caozuo] TABLE ',TABLE_SCHEMA,'.',TABLE_NAME,' ;')
FROM
information_schema.TABLE_CONSTRAINTS ;