原文:
大家都知道mysql是開源的資料庫,現在mysql在企業中的使用也越來越多,本人之前用過sql server資料庫,因業務需要和自己的興趣想要學習mysql,對于mysql,本人還是新手,請大家多多指正。
1.安裝mysql 本人安裝的版本是mysql5.6
mysql 5.6的安裝包下載下傳位址:
安裝過程比較簡單,基本上是下一步下一步,安裝過程中需要設定mysql的登入密碼。本人安裝的時候附帶安裝了mysql的可視化工具 。
是一款專為mysql設計的er/工具。它是著名的資料庫設計工具dbdesigner4的繼任者。你可以用mysql workbench設計和建立新的資料庫圖示,建立資料庫文檔,以及進行複雜的mysql 遷移。界面如下:

可視化工具的首頁主要分為三個部分:
1)sql development:相當于查詢分析器,用于編寫sql腳本。
2)data modeling:資料模型,用于建構實體模型,可以通過正向和逆向工程實作與資料庫和表之間的轉換。
3)server administration:伺服器管理,主要包括伺服器的cpu、記憶體消耗檢視,啟動mysql服務,一些其他的配置,以及資料導入導出等等。
點選“new connection”可以建立新的連接配接,打開連接配接,開始編寫sql腳本。如下圖:
可以看到資料庫,表,腳本編輯視圖,執行結果視圖,輸出視圖等等。
2.配置環境變量
将mysqld.exe的安裝路徑的加到path環境變量中
3.mysql注釋符有三種:
1)、#...
2)、-- ...,注意--後面必須跟一個空格
3)、/*...*/
4.存儲引擎
:mysql5.5之前的預設引擎,最為常用。擁有較高的插入,查詢速度,但不支援。
:型資料庫的首選引擎,支援事務,支援行級鎖定, mysql 5.5起成為預設資料庫引擎。
5.資料庫和表的建立
#建立資料庫(第一種注釋方法)
create database orderdb;
-- 删除資料庫(第二種注釋方法)
drop database orderdb;
/*顯示所有資料庫*/(第三種注釋方法)
show databases;
#顯示存儲引擎
show engines;
#like比對
show variables like ‘have%‘;
#查詢預設的存儲引擎
show variables like ‘storage_engine‘;
use orderdb;
#建立表,建立人員表,mysql中自增使用auto_increment, 而sql server中自增使用identity,此表僅用作測試
1
2
3
4
5
6
7
8
<code> </code><code>create</code>
<code>table</code> <code>tse_person</code>
<code>(</code>
<code> id</code><code>int</code>
<code>auto_increment,</code>
<code> </code><code>name</code>
<code>varchar</code><code>(32)</code><code>unique</code><code>,</code>
<code> age</code><code>int</code><code>,</code>
<code> sex boolean</code><code>default</code>
<code>0,</code>
<code> </code><code>primary</code>
<code>key</code>
<code>(id)</code>
<code>);</code>
#删除表
drop table tse_person;
#建立顧客表
<code>create</code> <code>table</code> <code>tse_customer</code>
<code> </code><code>cid</code><code>int</code><code>,</code>
<code> </code><code>cname</code><code>varchar</code><code>(32)</code><code>not</code>
<code>null</code><code>,</code>
<code> </code><code>email</code><code>varchar</code><code>(32)</code><code>not</code>
<code> </code><code>mobile</code><code>varchar</code><code>(20),</code>
<code> </code><code>primary</code>
<code>(cid)</code>
#建立産品表
9
<code>create</code> <code>table</code> <code>tse_product</code>
<code> </code><code>pid</code><code>int</code><code>,</code>
<code> </code><code>pnum</code><code>varchar</code><code>(32),</code>
<code> </code><code>pname</code><code>varchar</code><code>(128),</code>
<code> </code><code>unitprice</code><code>float</code>
<code>default</code> <code>5.0,</code>
<code> </code><code>storage</code><code>int</code><code>,</code>
<code>(pid)</code>
#建立訂單表,cid為外鍵,依賴于顧客表中的cid
<code>create</code> <code>table</code> <code>tse_order</code>
<code> </code><code>(</code>
<code> </code><code>oid</code><code>int</code><code>,</code>
<code> </code><code>cid</code><code>int</code><code>,</code>
<code> </code><code>orderdate datetime</code><code>default</code>
<code>now(),</code>
<code> </code><code>isfinish</code><code>bit</code><code>,</code>
<code> </code><code>primary</code>
<code>(oid),</code>
<code> </code><code>constraint</code>
<code>c_fk_cid</code><code>foreign</code>
<code>key</code> <code>(cid)</code><code>references</code>
<code>tse_customer(cid)</code>
<code> </code><code>);</code>
#建立訂單明細表,訂單編号和産品編号做聯合主鍵,訂單編号oid和産品編号pid同時也為外鍵
<code>create</code> <code>table</code> <code>tse_orderdetail</code>
<code> </code><code>oid</code><code>int</code><code>,</code>
<code> </code><code>quantity</code><code>int</code><code>,</code>
<code>key</code> <code>(oid, pid),</code>
<code> </code><code>constraint</code>
<code>c_fk_orderdail_oid</code><code>foreign</code>
<code>key</code> <code>(oid)</code><code>references</code>
<code>tse_order(oid),</code>
<code> </code><code>constraint</code>
<code>c_fk_orderdail_pid</code><code>foreign</code>
<code>key</code> <code>(pid)</code><code>references</code>
<code>tse_product(pid),</code>
#檢視表結構
describe tse_orderdetail;
desc tse_orderdetail;
#檢視表的詳細結構
show create table tse_orderdetail;
#修改表名
alter table tse_order rename tse_order2;
alter table tse_order2 rename tse_order;
#修改字段的類型
alter table tse_customer modify mobile varchar(30);
#修改字段名和字段類型
alter table tse_customer change mobile telephone int;
alter table tse_customer change telephone mobile varchar(20);
#在表的開頭添加字段
desc tse_person;
alter table tse_person add num int not null first;
#在表的指定字段後添加字段
alter table tse_person add email varchar(32) not null after name;
這篇部落格先簡單介紹這些,謝謝您的閱讀~
如果您有什麼問題,歡迎在下面評論,我們一起讨論,謝謝~
如果您覺得還不錯,不妨點下右下方的推薦,有您的鼓勵我會繼續努力的~