日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 人文社科 > 生活经验 >内容正文

生活经验

MYSQL的MERGE存储引擎

發布時間:2023/11/27 生活经验 37 豆豆
生活随笔 收集整理的這篇文章主要介紹了 MYSQL的MERGE存储引擎 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

MYSQL的引擎不是一般的多,這次說到的是MERGE,這個引擎有很多特殊的地方:

MERGE引擎類型允許你把許多結構相同的表合并為一個表。然后,你可以執行查詢,從多個表返回的結果就像從一個表返回的結果一樣。每一個合并的表必須有同樣的表定義。

MERGE存儲引擎在下面這種使用場合會最為有用,如果需要把日志紀錄不停的錄入MySQL數據庫,并且每天、每周或者每個月都創建一個單一的表,而且要制作來自多個表的合計查詢,MERGE表這時會非常有效。然而,這項功能有局限性。你只能合并MyISAM表而且必須嚴格遵守相同的表定義的限制。雖然這看起來好像是一個大問題,但是,如果你使用另外一種表類型(例如InnoDB),這種合并可能就不需要了。

其創建方法如下:

他將多個表在邏輯上當作一個表來查詢。他建立后有兩個文件,?
.frm 表結構定義?
.mrg union表的名字清單

兩個基本表:?
CREATE TABLE TEST_MERGE_1(?
ID INT(5) NOT NULL,?
VALUE VARCHAR(100) NOT NULL,?
PRIMARY KEY(ID)?
) ENGINE=MyISAM DEFAULT CHARSET=utf8?
CREATE TABLE TEST_MERGE_2(?
ID INT(5) NOT NULL,?
VALUE VARCHAR(100) NOT NULL,?
PRIMARY KEY(ID)?
) ENGINE=MyISAM DEFAULT CHARSET=utf8

MERGE表的建立:?
CREATE TABLE TEST_MERGE(?
ID INT(5) NOT NULL,?
VALUE VARCHAR(100) NOT NULL,?
PRIMARY KEY(ID)?
) ENGINE=MRG_MyISAM DEFAULT CHARSET=utf8 INSERT_METHOD=LAST UNION=(TEST_MERGE_1,TEST_MERGE_2) ;


1. 此表類似于SQL中的union機制。?
2. 此表結構必須與基本表完全一致,包括列名、順序。UNION表必須同屬一個DATABASE。?
3. 基本表類型必須是MyISAM。?
4. 可以通過修改.mrg文件來修改MERGE表,每個基本表的名字占一行。注意:修改后要通過FLUSH TABLES刷新表緩存。?
5. 對基本表的更改可以直接反映在此表上。?
6. INSERT_METHOD的取值可以是: 0 不允許插入 FIRST 插入到UNION中的第一個表 LAST 插入到UNION中的最后一個表。(4.0之后可用)?
7. 定義在它上面的約束沒有任何作用,約束是由基本表控制的,例如兩個基本表中存在著同樣的一個Key值,那么在MERGE表中會有兩個一樣的Key值。

?

原文:http://blog.sina.com.cn/s/blog_753035050100wi4m.html

總結

以上是生活随笔為你收集整理的MYSQL的MERGE存储引擎的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。