MySQL必備知識DDL和DML

2021-10-07 10:24:17 字數 4169 閱讀 4221

刪除表修改表名

查詢表結構

修改表的結構

dmlddl(data definition language):資料定義語言,它是用來定義,主要負責管理資料物件的。

其中包括資料庫和**的多種操作

檢視資料庫的命令

show

databases

;#查詢所以的資料庫

1,建立資料庫

create

database 資料庫名;

2,重複建立同名資料庫會報錯,所以一般都使用:

create database if not exists 資料庫名;

如果不存在"資料庫名"就建立資料庫,存在則跳過這條語句.

create

database

ifnot

exists 資料庫名;

3,注意預設字符集在mysql5.7版本中編碼為latin1,不支援中文,所以在5.7的版本應改為:

create

database 資料庫名 default

charset utf8;

但是在mysql8.0以上的版本,已經解決了這個問題,8.0以上的版本,預設是utf-8編碼;charset是字元編碼,如果沒有指定則資料庫無法儲存中文字元

4,刪除資料庫,一旦刪除,資料將難以恢復

drop

database 資料庫名;

5,使用資料庫(進入資料庫);

use 資料庫名
常用的表查詢命令

desc 資料表

show

columns

from 資料表

create

table

ifnot

exists **名程(

屬性名1 屬性型別 [約束...

],..

....

屬性名n 屬性型別 [約束...

],);

#建立表並設定它的屬性

示例:建立學生表,如果已經建立好了就忽略

create

table

ifnot

exists student_tb(

s_id int

,##學號

s_name varchar(20

),##學生姓名

s_age int

,##學生年齡

s_*** varchar(4

),##性別

s_birthday date

##生日

);

**在建立的時候,要給每個列名指定乙個屬性來儲存

數值型別

型別位元組

描述tinyint

1位元組迷你整型(0~255)

smallint

2位元組小整型(0~65535)

mediumint

3位元組中等整型

int (integer)

4位元組整型

bigint

8位元組大整型

float

4位元組單精度浮點型

double

8位元組雙精度浮點型

decimal

自適應小數型別

字串型別

型別描述

char(長度)

定長字串[0-255]

varchar(長度)

自動縮排的字串

tinyblob

表示小型的二進位制資料

tinytext

小型文字

mediumblob

中等大小的二進位制資料

blob

二進位制資料

text

中型文字

longblob

長二進位制資料

longtext

長文字字串

常用的時間和日期型別

資料型別

描述格式

date

日期yyyy-mm-dd time

time

時間hh:mm:ss(24小時制)

datatime

日期時間

yyyy-mm-dd hh:mm:ss

drop

table 資料表名;

rename

table 表名 to 新錶名;

desc 表名 ;

show

columns

from 表名 ;

增加表中列

alter

table

[表名]

add《屬性列名》

《屬性型別》

(約束)

;

修改表中列的資料型別

alter

table

[表名]

modify

column

《屬性列名》

《型別》

(約束)

;

修改表中列的名稱

alter

table

[表名] change column

《屬性列名》

《修改為屬性列名》

《型別》

(約束)

;

刪除表中列

alter

table

[表名]

drop

column 屬性列名;

資料操縱語言,它是用來操縱資料物件中的資料的。

其中包括資料的

表的查詢語句(dql)

select

*from **;

1,選擇需要插入的屬性值

insert

into 表名(

屬性名1

,屬性名2

,…,屬性名n)

value

( 屬性值1

,屬性值2

,…,屬性值n)

;`

2,為全部屬性插入屬性值,可以不用給表名指定屬性名

insert

into 表名 value

(屬性值1

,屬性值2

,…,屬性值n)

;

注意:這裡的屬性值與屬性名的位置要一一對應。

3,插入多條資料

insert

into 表名 values

(屬性值1

,屬性值2

,…,屬性值n)

,(屬性值1

,屬性值2

,…,屬性值n)

,(屬性值1

,屬性值2

,…,屬性值n)

;

1,更新全部資料

update 表名 set 屬性名1

=屬性值1

,屬性名2

=屬性值2

;

2,帶條件更新

update 表名 set 屬性名1

=屬性值1

,屬性名2

=屬性值2

where 屬性名=屬性值;

3,多條件更新

所有條件需要同時滿足用and或『&&』,不需要同時滿足用or或『||』。

update 表名 set 屬性名1

=屬性值1

,屬性名2

=屬性值2

where 屬性名1

=屬性值1&&(

||) 屬性名2

=屬 性值2

;

1, 全部刪除

delete

from 表名;

2,條件刪除

delete

from 表名 where 屬性名=屬性值;

3,總結

資料儲存

MySQL必備知識

邏輯結構設計 物理結構設計 資料庫的實施 資料庫的執行和維護 關係資料結構的特點 資料庫的常用術語 常用命令 做乙個資料庫之前,一定要先規劃好要做什麼,如何做,以及需要儲存哪些資料,這些資料之間的關係是什麼,需要滿足哪些使用者要求,都到先考慮好.這就是資料庫設計的前提。sql語句不區分大小寫,資料庫...

mysql核心知識之DDL資料定義語言

資料庫的建立使用 直接建立資料庫 db1 create database db1 檢視當前在哪個庫裡邊 select database 進入庫的操作 use 庫名 判斷是否存在,如果不存在則建立資料庫 db2 create database if not exists db2 建立資料庫並指定字符集...

MySQL之DDL庫和表的管理

資料定義語言 針對的是表的結構 庫和表的管理 一 庫的管理 建立 修改 刪除 二 表的管理 建立 修改 刪除 建立 create 修改 alter 刪除 drop 語法 create database if not exists 庫名 character set 字符集名 案例 建立庫books 如...