由於數據庫實驗用到了MySQL,這裏對如今已經涉及到的MySQL部分操做作一個簡單的小結。mysql
上MySQL的官網下載對應本身OS平臺的MySQL安裝文件,有在線安裝和離線安裝包兩種,因爲服務器在國外,若是網絡不是太好的話推薦選擇離線安裝包。
安裝的話就不說了,網上教程一大把,我的PC的話,通常選擇開發者模式安裝就行了。這裏主要說一下安裝後的配置,給本身作個記錄(雖然網上也有不少,可是本身作個總結省得每次都去找)。linux
機器環境: OS: Windows 10(1703) 64bit
第一步:就是配置MySQL的默認字符編碼,新版的MySQL的配置文件my.ini不在安裝目錄下了,而是在「C:\ProgramData\MySQL\MySQL Server 5.7」下,固然這是在個人機器上(我是以默認目錄安裝的)。sql
[client] default-character-set=utf8 [mysql] default-character-set=utf8 [mysqld] character-set-sever=utf8
第二步:修改數據庫存放位置。一樣在my.ini下找到[mysqld],而後在這個下方找到basedir和datadir兩個選項,其中basedir是你的MySQL的安裝位置,datadir就是MySQL的數據庫的存放位置了。
若是你使用完整的安裝文件安裝,切記不要改動basedir,不然你的MySQL服務啓動不起來的。固然若是是免安裝版,就根據你的實際安裝位置更改了。
你能夠將數據庫的存放位置放到任何你喜歡的位置,而後修改datadir爲你肯定的目錄便可:數據庫
datadir="D:/DevelWorks/MySQL/Data/" 說實話這裏有個惱火的地方就是在Windows的環境下有時會由於路徑分隔符(/或\)的不一樣致使服務啓動失敗,這個本身多試幾回,不一樣的環境有多是「/」也有多是「\」。
通常來講配置這兩個就差很少了,若是須要其餘配置,看看官方文檔就行了。
在Windows下啓動MySQL:服務器
以管理員身份打開命令提示符: # net start MySQL57 啓動服務 # net stop MySQL57 關閉服務
至於linux下的配置由於沒時間也沒有去搗鼓,估計配置方式也差很少,不一樣的在於配置文件的存放位置。網絡
登陸:mysql -uroot -p
回車後會提示你輸入密碼,正確輸入密碼後回車就能夠登陸了。建議不要在-p參數後面直接寫上密碼,由於這裏是明文顯示的。ui
退出:exit;或quit;或\q;編碼
注意:每一個MySQL的命令後面都以英文分號(;)結束。code
查看數據庫:
show databases;orm
選擇(切換)數據庫:
use [數據庫名];
查看數據表:
show tables;
描述表結構:
describe `表名`;
或:show columns from `表名`;
建立數據庫:
create database `database-name`;
刪除數據庫:
drop database `數據庫名`;
建立表:
create table `table-name`(
`column-name`, [data-type], [(表級)完整性約束條件],
.
.
.
[表級完整性約束條件]
);
若是完整性約束條件涉及多個屬性列,則必須定義在表級完整性上,不然既能夠定義在列級,也能夠定義在表級。
刪除表:
drop table `表名`;
插入記錄(元組):
insert into `表名` values(屬性1的值,屬性2的值,...,屬性n的值);
insert into `表名`(屬性1,屬性2,...,屬性x) values(屬性1的值,屬性2的值,...,屬性x的值);
導入sql文件:
source [文件路徑];
查看錶內容:
select * from `表名`;(查看全部內容)
select * from `表名` limit n;(僅查看前n條記錄)
select `屬性1`, `屬性2`, ..., `屬性n` from `表名`;(查看指定屬性列的內容)
更新表:
ALTER TABLE <表名>
[CHANGE COLUMN <列名> <列名> <數據類型> [ <列級完整性約束條件> ] ,]
[ADD COLUMN <列名> <數據類型> [ <列級完整性約束條件> ] ,]
[ADD <表級完整性約束條件> ,]
[DROP COLUMN <列名> ,]
[DROP <完整性約束條件> ]
重命名錶:
rename table `old-table-name` to `new-table-name`;
在作實驗的時候有時出現"ERROR 1064 (42000)"這個語法錯誤,上網查瞭如下,原來是由於可能在SQL語句或者MySQL命令中使用了MySQL中的保留字,從而引起的語法錯誤,在這種狀況下,應將保留字使用符號包含,避免SQL語句的解析出錯。所以,在書寫SQL語句時,應儘可能將所定義變量(如數據庫名字,表名等)使用符號
包含。
TABLE_SCHEMA : 數據庫名 TABLE_NAME:表名 ENGINE:所使用的存儲引擎 TABLES_ROWS:記錄數 DATA_LENGTH:數據大小 INDEX_LENGTH:索引大小 -- SQL: SELECT TABLE_NAME,DATA_LENGTH+INDEX_LENGTH,TABLE_ROWS FROM TABLES WHERE TABLE_SCHEMA='數據庫名' AND TABLE_NAME='表名';
【參考】MySQL必知必會。
powered by exRunner If you forward it, please specify the author and source.