我在配置mysql時將配置文件中的默認存儲引擎設定為了InnoDB。今天查看了MyISAM與InnoDB的區別,在該文中的第七條“MyISAM支持GIS數據,InnoDB不支持。即MyISAM支持以下空間數據對象:Point,Line,Polygon,Surface等。”
作為一個地理信息系統專業的學生(其實是測繪專業)來講,能存儲空間數據的數據庫才是好數據庫,原諒我是數據庫小白的身份。
有三種方式可以設定數據庫引擎:
(1)修改配置文件
將安裝目錄下~\MySQL\mysql-5.6.31-winx64的my.int配置文件打開,在[mysqld]的后面修改或添加(如果你之前未設置)下列語句:
default-storage-engine=INNODB

而我會自己修改為MyISAM,以后在你創建數據表時默認引擎為當前設置。
(2)創建數據表時聲明
mysql> create table test(
-> id int(10) unsigned not null auto_increment,
-> name varchar(10) character set utf8,
-> age int(10),
-> primary key(id)
-> )
-> engine=MyISAM
-> ;
上述語句為創建表格的語句,如下圖,沒有什么可說的。

接下來查詢一下,創建的表格的引擎類別。
show create table test;

(3)更改數據表的引擎
數據表的引擎類型,不是一成不變的,可以通過可視化應用如Navicat for Mysql進行修改,也可以通過命令來修改,下面將剛才新建的test表格引擎修改為InnoDB.
alter table test engine=innodb;

補充知識:MySQL 更改所有表的數據引擎,MyISAM 設置為 InnoDB
一、先設置執行SQL語句:
SELECT GROUP_CONCAT(CONCAT( 'ALTER TABLE ' ,TABLE_NAME ,' ENGINE=InnoDB; ') SEPARATOR '' )
FROM information_schema.TABLES AS t
WHERE TABLE_SCHEMA = '數據庫' AND TABLE_TYPE = 'BASE TABLE';
把數據庫改成你的數據庫名字,這里假設我的數據庫是database
SELECT GROUP_CONCAT(CONCAT( 'ALTER TABLE ' ,TABLE_NAME ,' ENGINE=InnoDB; ') SEPARATOR '' )
FROM information_schema.TABLES AS t
WHERE TABLE_SCHEMA = 'database' AND TABLE_TYPE = 'BASE TABLE';
二、得到一段超長的SQL,復制后執行這段SQL

三、查看當前數據庫的字段存儲信息
SHOW TABLE STATUS FROM database;
結果:

以上這篇MySQL創建數據表時設定引擎MyISAM/InnoDB操作就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
您可能感興趣的文章:- MySQL 常見的數據表設計誤區匯總
- MySQL數據表分區策略及優缺點分析
- MySQL高級特性——數據表分區的概念及機制詳解
- MySQL如何構建數據表索引
- MySQL 索引和數據表該如何維護
- Mysql刪除數據以及數據表的方法實例
- 刪除mysql數據表如何操作
- 關于MYSQL 你需要知道的數據類型和操作數據表
- MySQL創建數據表并建立主外鍵關系詳解
- MySQL數據表合并去重的簡單實現方法
- MySQL 如何設計統計數據表