MySQL基本操作

來源:互聯網
上載者:User

標籤:解決亂碼   UI   資料類型   一個   大小   databases   att   desc   轉義   

啟動MYSQL:mysql.exe -hlocalhost -p3306 -uroot –p

退出:exit,quit,\q

 

資料庫操作:

1、 新增資料庫

create database 資料庫名稱 【選項】

 

庫選項:用來約束資料庫

 -字元集設定:charset/character set 具體字元集(資料存放區的編碼格式):常用的字元集:GBK和UTF8

-校對集設定:collate 具體校對集(資料比較的規則)

例:create database mydatabase charset utf8

 

資料庫名字不能用關鍵字或保留字(將來可能用到的)如果非要用,那麼必須加上反引號(Esc鍵下面的鍵在英文狀態下輸入)

中文資料庫也是可以的,但要保證伺服器能識別,但最好不用,當然也可以告訴伺服器當前的中文字元集是什麼—set names gbk

 

2、 查看資料庫

1) 查看所有資料庫

show databases

 

2)查看指定資料庫:模糊查詢

show databases likes ‘pattern‘  --pattern是匹配模式

%:表示匹配多個字元

_:表示匹配單個字元

但含有萬用字元時通過“\”轉義。

3)查看“資料庫建立語句“

    show create database 資料庫名字

 

3、 更新資料庫

資料庫的修改僅限庫選項:字元集和校對集(校對集依賴字元集)

alter database 資料庫名字【庫選項】

alter database mydatabase charset utf8

 

4、 刪除資料庫

drop database 資料庫名字

 

表操作

1、 新增資料表

create table [if not exists] 表名(

欄位名字 資料類型,

欄位名字 資料類型,

。。。。。最後一行不需要逗號

)【表選項】

[if not exists]:如果表不存在,就建立,否則不建立

 

表選項:

        -字元集設定:charset/character set 具體字元集

        -校對集設定:collate 具體校對集

        -儲存引擎:engine 具體的儲存引擎(innodb和myisam)

注意:資料表建立要指定資料庫

1) 顯示指定表所屬資料庫:create table if not exists mydatabase.student

2) 先進入資料庫:use 資料庫名字

 

例:

create table if not exists mydatabase.student (

name varchar(10),

gender varchar(10),

number varchar(10),

age int

)charset utf8;

 

2、 查看資料表

1) 查看所有表

show tables

 

2) 查看指定資料庫:模糊查詢

show tables likes ‘pattern‘

 

3) 查看錶建立語句

show create table 表名【\g或\G】

\g縱向顯示  \G橫向顯示

 

4) 查看錶中欄位資訊

yfDesc\describe\show columns from 表名

例:desc\describe student ; show columns from student

欄位名      欄位類型 是否允許為空白 索引   預設值     擴充

 

3、 修改資料表

1) 修改表名

rename table 老表名 to 新表名

 

2) 修改表選項

alter table 表名 表選項

例:alter table student charset gbk

 

3) 修改欄位

-新增欄位

alter table 表名 add【column】欄位名 資料類型【列屬性】【位置】

位置:First:第一個位置

          After: 在哪個欄位之後;預設在最後一個欄位

-修改欄位

alter table 表名 modify 欄位名 資料類型【屬性】【位置】

例:alter table student modify number char(10) after name;

-重新命名欄位

alter table 表名change 舊欄位 新欄位 資料類型 【屬性】【位置】

例; alter table student change gender sex char(10) after name

-刪除欄位

alter table 表名 drop 欄位名

 

4、 刪除資料表

drop table 表名1,表名2.......

 

 

 

資料操作

1、 新增資料(char,中文加單引號)

1) 給全表插入資料,不需要指定欄位列表,但資料順序要和欄位順序一致。

insert into values(值列表)【,(值列表)】.......可以一次性插入多條記錄

 

2) 給部分欄位插入資料

insert into (欄位列表)values(值列表)【,(值列表)】.......可以一次性插入多條記錄

 

 

2、 查看資料(同SQL Server)

select 欄位1,欄位2.....

from table

where 條件

 

3、 更新資料

Updata 表名

set 欄位=值

[where 條件]

 

 

4、刪除資料

delete from table

[where條件]

 

 

中文資料問題

中文資料問題實際上是字元集問題

 

查看伺服器支援的所有字元集

show character set;

 

查看伺服器預設的對外處理的字元集

show variables like ‘character_set%’

 

 

解決插入問題:

修改伺服器字預設的接收的字元集為用戶端字元集

set character_set_client=”字元集”

 

解決亂碼問題;

修改伺服器字預設的發送給用戶端的字元集為用戶端字元集

set character_set_results=”字元集”

 

串連層:character_set_connection,是字元集轉變的中介,如果同意,效率更高,也可以不改

 

set names “字元集”的作用等價於修改以上三者

 

set 變數=值 修改的知識會話層級(當前用戶端,當次串連有效)

 

 

校對集問題

校對集:資料比較的方式

 

校對集的三種格式:

_bin:binary,二進位比較,去除二進位位,一位一位比較區分大小寫

       _cs:case sensitive,大小寫敏感,區分大小寫

       _ci:case insensitive, 大小寫不敏感,不區分大小寫

 

查看資料庫所支援的所有校對集:

show collation

 

常見的校對集:utf8_bin,utf8_general_ci, gbk_chinese_ci,gbk_bin

 

校對集必須在沒有資料之前設定好,如果有了資料在進行校對集修改,那麼修改無效

 

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.