MySQL學習——基礎

來源:互聯網
上載者:User

標籤:dump   enum   tin   dex   索引   date   檔案中   儲存到檔案   位元組   

本文是MySQL的基礎知識。

 

Linux啟動MySQL服務命令 :

  service mysql start

Linux關閉MySQL服務命令 :

  service mysql stop

登入MySQL命令:

  mysql -u <使用者名稱>

查看資料庫命令:

  show databases;

切換資料庫命令:

  use <資料庫名>[;]

查看錶命令:

  show tables;

退出MySQL命令:

  quit/exit

建立資料庫命令:

  create database <資料庫名>;

建立資料表命令:

  create table <表名>

  (列名1   資料類型(資料長度),

    …………

   列名n   資料類型(資料長度)

  );

執行sql檔案命令:

  source  <sql檔案路徑>;

MySQL資料類型

資料類型 大小(位元組) 用途 格式
int 4 整數  
float 4 單精確度浮點數  
double 4 雙精確度浮點數  
enum   枚舉,單選 ENUM(‘a‘,‘b‘)
set   多選 set(‘1‘,‘2‘,‘3‘)
date 3 日期 yyyy-MM-dd
time 3 時間點或期間 yyyy-MM-dd hh:ms:ss
year 1 年份值 yyyy
char 0-255 定長字串  
varchar 0-255 變長字串  
text 0-65535 長文本資料  

  除此之外,還有tinyint、smallint、mediumint、bigint.

char與varchar區別:

  char定長,字元不夠時補齊;varchar變長,沒有補齊的Null 字元

enum與set區別:

  enum定義時要一一枚舉;set是多選的

MySQL約束分類:

約束類型 主鍵 預設值 唯一 外鍵 非空
關鍵字 PRIMARY KEY DEFAULT UNIQUE FOREIGN KEY NOT NULL

主鍵約束命令:

  <列名>  <資料類型>[資料長度]  PRIMARY KEY

  或者

  CONSTRAINT  <主鍵名>  PRIMARY KEY (<列名1>,…,<列名n>)

預設值約束命令:

  <列名>  <資料類型>[資料長度]  DEFAULT  <預設值>

唯一約束命令:

  UNIQUE  <(列名)>

外鍵約束命令:

  CONSTRAINT  <外鍵>  FOREIGN  KEY  <(列名)>  REFERENCES  <表名><(列名)>

非空約束命令:

  <列名>  <資料類型>[資料長度]  NOT NULL

插入資料命令:

  insert  into  <表名>(<列名1>,…,<列名n>)  values

  (值1,…,值n),

  …………

  (值1,…,值n);

刪除庫命令:

  drop  database  <庫名>;

刪除表命令:

  drop  table  <表名>;

查詢命令:

  select  <列名n>  from  <表名>  where <限制條件>;

數學符號條件:

  =  <  >  <=  >=  <>  !=

AND  並且

OR   或者

BETWEEN  ......  AND  ......   兩者之間

IN 在範圍內

NOT  IN  不在範圍內

萬用字元:

  _(底線) : 代表一個未指定字元,佔一位

  % :代表不定個未指定字元

  與 like 配合使用

結果排序:

  order  by  [<關鍵字>];

    ASC  : 升序(預設)

    DESC  : 降序

內建函數:

count sum avg max min
計數 求和 求平均值 最大值 最小值

  count 可以用於任意資料類型; sum和avg 用於數字類資料類型;max和min 用於數值、字元、日期時間類型

AS : 別名

子查詢

  巢狀查詢

 串連查詢命令

  jion … on …

  左串連(影響右表) : left  jion … on … 

  右串連(影響左表) : right  jion … on …

  左右都有影響的串連 : inner  jion … on …

表重新命名命令

  rename  table  <表原名>  to  <表新名>;

  alter  table  <表原名>  rename  <表新名>;

  alter  table  <表原名>  rename  to  <表新名>;

增加列命令

  alter  table  <表名>  add [column] <列名>  <資料類型>  <約束>;

  或者  alter  table <表名> add <列名> <資料類型> <約束>;

刪除列命令

  alter table <表名> drop [column] <列名>;

列重新命名命令

  alter table <表名> change <列原名>  <列新名>  <資料類型> <約束>;

修改資料類型命令

  alter table <表名> modify <列名> <新資料類型>;

修改值命令

  update <表名> set 列1=值1,…,列n=值n where <條件>;

刪除行記錄命令

  delete from <表名> where <條件>;

建立索引命令

  alter  table  <表名>  add  index  <索引名>(<列名>);

  或者 create  index  <索引名>  on  <表名>(列名);

查看索引命令

  show  index  from  <表名>;

建立視圖命令

  create  view  <視圖名>(列1,…,列n) as select 列1,…,列n from  <表名>;

匯入命令

  將一個檔案的資料匯入到一張資料表裡

  load  data  infile  <‘檔案路徑和檔案名稱‘>  into  table  <表名>;

匯出命令

  把某表中的資料儲存到檔案中

  select  列1,…,列n  into  outfile  <‘檔案路徑和檔案名稱‘>  from  <表名>;

Database Backup命令

  mysqldump  -u  <使用者名稱,如root>  <資料庫名> > <檔案路徑和檔案名稱>;

資料表備份命令

  mysqldump  -u  <使用者名稱,如root>  <資料庫名>  <表名> > <檔案路徑和檔案名稱>;

資料恢複命令

  source  <檔案路徑和檔案名稱>;

  或者 mysql  -u  <使用者名稱,如root>  <資料庫名>  <  <檔案路徑和檔案名稱>;

MySQL學習——基礎

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.