程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> MYSQL數據庫 >> MySQL綜合教程 >> MySQL中一些經常使用的數據表操作語句筆記

MySQL中一些經常使用的數據表操作語句筆記

編輯:MySQL綜合教程

MySQL中一些經常使用的數據表操作語句筆記。本站提示廣大學習愛好者:(MySQL中一些經常使用的數據表操作語句筆記)文章只能為提供參考,不一定能成為您想要的結果。以下是MySQL中一些經常使用的數據表操作語句筆記正文


1.應用EXPLAIN
EXPLAIN敕令可以檢查履行籌劃,在後面的blog中曾經引見過。這個辦法是我們最重要的調試對象。

2.實時更新履行籌劃中應用的統計信息
因為統計 信息不是每次操作數據 庫 都 進 行更新的,普通是在 VACUUM 、 ANALYZE 、 CREATE INDEX等DDL履行的時刻會更新統計信息,
是以執 行 計 劃所用的 統計 信息很有能夠比 較 舊。 如許執 行 計 劃的剖析 結 果能夠 誤 差會 變 年夜。

以下是表tenk1的相干的一部門統計信息。
SELECT relname, relkind, reltuples, relpages
FROM pg_class
WHERE relname LIKE 'tenk1%';

relname | relkind | reltuples | relpages
----------------------+---------+-----------+----------
tenk1 | r | 10000 | 358
tenk1_hundred | i | 10000 | 30
tenk1_thous_tenthous | i | 10000 | 30
tenk1_unique1 | i | 10000 | 30
tenk1_unique2 | i | 10000 | 30
(5 rows)
個中 relkind是類型,r是本身表,i是索引index;reltuples是項目數;relpages是所占硬盤的塊數。

3.明白用join來聯系關系表
普通寫法:SELECT * FROM a, b, c WHERE a.id = b.id AND b.ref = c.id;
假如明白用join的話,履行時刻履行籌劃絕對輕易掌握一些。
例子:
SELECT * FROM a CROSS JOIN b CROSS JOIN c WHERE a.id = b.id AND b.ref = c.id;
SELECT * FROM a JOIN (b JOIN c ON (b.ref = c.id)) ON (a.id = b.id);

4.封閉主動提交(autocommit=false)

5.屢次拔出數據是用copy敕令更有用率
我們有的處置中要對統一張表履行許多次insert操作。這個時刻我們用copy敕令更有用率。由於insert一次,其相干的index都要做一次,比擬消費時光。

6.暫時刪除index
有時刻我們在備份和從新導入數據的時刻,假如數據量很年夜的話,要很幾個小時能力完成。這個時刻可以先把index刪除失落。導入在建index。

7.外鍵聯系關系的刪除
假如表的有外鍵的話,每次操作都沒去check外鍵整合性。是以比擬慢。數據導入後在樹立外鍵也是一種選擇。

8.增長maintenance_work_mem參數年夜小
增長這個參數可以晉升CREATE INDEX和ALTER TABLE ADD FOREIGN KEY的履行效力。

9.增長checkpoint_segments參數的年夜小
增長這個參數可以晉升年夜量數據導入時刻的速度。

10.設置archive_mode有效
這個參數設置為有效的時刻,可以或許晉升以下的操作的速度
・CREATE TABLE AS SELECT
・CREATE INDEX
・ALTER TABLE SET TABLESPACE
・CLUSTER等。

11.最初履行VACUUM ANALYZE
表中數據年夜質變化的時刻建議履行VACUUM ANALYZE。

�性名2;

first可選項指此字段為表的第一個字段,after 屬性名2指放在指定字段前面,默許最初一名。

7.刪除字段

alter table 表名 drop 屬性名;

8.刪除聯系關系表
(1)刪除表的外鍵束縛
外鍵是一個特別字段,其將某一個表與其父表樹立聯系關系關系。在創立表的時刻,外鍵束縛就曾經設定好了。去失落他們之間的聯系關系關系須要用到上面語句。

alter table 表名 drop foreign key 外鍵別號;

外鍵別號參數指創立表時設置的外鍵代號。

(2)刪除沒有被聯系關系的通俗表

drop table 表名;

刪除一個表時,表中的一切數據也會被刪除。刪除表時最好先將表中的數據備份一下。

(3)刪除被其他表聯系關系的父表
當刪除���聯系關系關系的表時,用drop table example1 會報錯,緣由是有外鍵依附於該表

例如創立了一個example4表依附於example1表,example4表的外鍵stu_id依附於example1表的主鍵。example1表時example4表的父表。

假如要刪除example4表,必需先去失落這類依附關系。最簡略的方法是先刪除子表example4,然後刪除父表example1。但如許能夠會影響子表的其他數據。

另外一種辦法是先刪除子表的外鍵束縛,然後刪除父表。這類辦法不會影響子表的其他數據,可以包管數據庫的平安。

好比,example4表的外鍵別號是d_fk,刪除example4的外鍵束縛

alter table example4 drop foreign key d_fk; 

可以經由過程show create table example4 \G來檢查能否已刪除。
然後再履行

drop table example1; 

.
履行勝利則表現操作勝利。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved