1. 程式人生 > >mysql查詢資料庫所有表,刪除所有表外來鍵,清空所有表資料

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 ;