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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

表和索引

發布時間:2024/4/17 编程问答 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 表和索引 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1.表都有結構以表明和.frm來命名的

? ?這個MyISAM引擎創建表和索引,如果Country是一個MyISAM表,這個MyISAM存儲引擎創建命名為Country.MYD和Country.MYI來存儲數據的行和索引

? 默認情況下InnoDB引擎共享文件對于多個表,如果Country是一個InnoDB表,有Country.frm被創建

?這個MEMORY引擎不適用任何磁盤存儲,它管理表內容在內存中

表的數量由操作系統性能和磁盤的容量都可以決定表的性能,限制表的數量的大小是最大文件的尺寸。一個操作系統可以支持不同類型的文件系統,每個文件系統有最大文件尺寸。

? ? ? 1.轉換可以使用更大表的一個存儲引擎。比如轉換MyISAM表到一個InnoDB表,這個InnoDB存儲引起管理表在一個表空間,能夠配置更大。

? ? ? 2.可以修改操作系統。

8.2 創建表

MySQL提供了集中方式來創建表:

? ? ? ? 1.create table table_name(column_definitions);

? ? ? ? 2.create table t (id int not null);

? ? ? create table if not exists t (i int)

創建表時可以明確的指定數據庫的名字如test數據庫.mytable

8.2.2 指定存儲引擎對于一個表

每個表被創建時可以指定存儲引擎的,則MyISAM,MERGE和MEMORY存儲引擎總是可以獲得

2.這InnoDB存儲引擎被包含在所有二進制的分布式中

3.額外的存儲引擎被包含在MySQL Max二進制分布式中

為了看哪種存儲引擎你的服務器是支持的,使用show engines表達式


為了指定一個存儲引擎當你創建一個表是,包括ENGINE=engin_name選項

create table t(i int) engine=InnoDB

如果創建表沒有ENGINE選項,MYSQL創建表使用默認的引擎,這由stroage_engein變量指定。內建的默認值是storage_engine是MyISAM。然而,取決于MySQL被安裝和配置,storage_engine可能被設置為不同種類的存儲引擎。默認的存儲引擎自動使用--default-stroage-engine選項

對于正在運行的服務器,超級管理員能夠通過 SET globale sorage_engine=engine_name;

如果一個引擎是合法但時無法獲得是,當使用storage_engine系統變量。使用不在支持的引擎如ISAM不在被MySQL5支持了,就產生了警告。

8.2.3 創建表基于已經存在的表

1. create table ...select ,拷貝列明和數據類型從原來的表,但是不維持PRIMARY KEY索引信息或者AUTO_INCRMENT列屬性信息。這個新表使用默認存儲引擎而不是原來表的引擎。

?2. create table....like 這個創建的新創建的空表完全和原來的表一致,但是一些屬性還是無法拷貝如下:

? 2.1 ?如果原來的表是MyISAM表對于DATA directory or index directory表選項,無法拷貝到新表

? 2.2 外鍵



總結

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

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