9 mySQL(DDL 表 字段 增刪改查)

2021-10-07 20:44:23 字數 3592 閱讀 1547

表:增,刪,改,查,複製

字段:增,刪,改,查

字段型別

字段約束:用於限制欄位的資料的,從而保證資料一致,準確,可靠

???級連刪除/ 級連滯空 (p148,37:30暫時沒看)

//中間用空格隔開

create

table 表名(

欄位名 字段型別 字段約束,

欄位名 字段型別 字段約束,

欄位名 字段型別 字段約束);

//中間用空格隔開,如果沒有這個表名建設這個表名,防止**報錯

create

table

ifnot

exists 表名(

欄位名 字段型別 字段約束,

欄位名 字段型別 字段約束,

欄位名 字段型別 字段約束

);

drop

table

ifexists 表名

//修改表名

alter

table 舊表名

rename

to 新錶名

//檢視表中有的字段

desc 表名

複製

//複製並新建表中字段

creat table 新錶名 like 舊表名

//複製並新建表中字段+原來資料

creat table 新錶名 select

*from 舊表

//新增字段

alter

table 表名

addcolumn 欄位名 字段型別 字段約束

//刪除字段

alter

table 表名

drop

column 欄位名

//修改欄位名,字段型別不能省 

alter

table 表名

change

column 舊欄位名 新欄位名 字段型別 字段約束

//修改字段型別

alter

table 表名

modify

column 欄位名 字段型別 字段約束

//檢視字段,及型別限制

desc 表名

show

columns

from 表名

(一)數字型別

//數字型別

1.整型

(1)int

2.小數型

(1)人民幣:decimal(5,2) //舉例:最大是999.99,括號可以省略

(2)雙精度:double(5,2) //舉例:最大是999.99,括號可以省略

(3)單精度:float

(二)字元型

字元型**備註

長文字text

固定長度

char(10)

如果就兩個字元的話,也會補齊8個空格,一般用於長度一致的內容時

可變長度

varchar(10)

(三)日期型

日期型格式

**備註

yyyy-mm-dd

data

沒有小時,分鐘,秒

hh:mm:ss

time

只有小時,分鐘,秒

yyyy-mm-dd hh:mm:ss

datatime

時間跨度長,位元組長,1900- 無窮

yyyy-mm-dd hh:mm:ss

timestamp

時間跨度短,位元組短,1970-2038

blob

tinyblob

單個欄位的限制

1.

notnull

//必填

2.default

"內容"

//輸入值為null時,儲存到資料庫預設值"內容"

3.primary

key//主鍵

//欄位的值為唯一

//字段預設不能為空

//一張表乙個主鍵,可以為主鍵組合(可以設定多個欄位加一起為主鍵,例如兩個欄位的值一樣確定唯一性)

4.unique

//設定字段不能重複

//一張表多個唯一字段,內容可以為null

//(在sqlyog圖形化軟體中[索引]處設定)

5.check

(條件)

//條件和 where中的條件一致,

//sqlyog圖形化工具不能直接寫,只能**寫

//mysql 不能用, 其他的能用

6.auto_increment

//自增長列,讓其中乙個值一直增長,配合dml新增資料使用,資料值寫【null】

//字段型別為:數值型

//乙個表內最多乙個自增長列,一般為主鍵/唯一鍵

單個欄位的限制與另一表中字段相關:外來鍵

(1)**操作

constraint 外鍵名

foreign

key (表1欄位名)

references 表2名(表2需要對應的主鍵欄位名)

(2)資料庫圖形操作

[外部鍵]

->

[約束名:自定義]

->

[引用列:表1的xx]

->

[引用表:表2]-

>

[引用列:表2的yy]

//表1的yy欄位內容必須是表2xx欄位內容

//表1欄位,和表2欄位的型別需要一致,代表的意義一致,欄位名可以不一致

//

舉例:

create

table

ifnot

exists 表名(

欄位名 字段型別 not

null

primary

key,

欄位名 字段型別 字段約束,

欄位名 字段型別 字段約束

//設定外來鍵

constraint 外鍵名

foreign

key (表1欄位名)

references 表2名(表2需要對應的主鍵欄位名)

);//約束之間用空格隔開就行,可以加多個 ,

//前五種寫在行內,最後的外來鍵,寫在最後

Oracle 表字段增刪改

增加字段語法 alter table 表名 add 欄位名 字段型別 預設值 是否為空 例 alter table corpinfo add createdate null 例 alter table corpinfo add createdate varchar2 20 修改欄位的語法 alter...

Oracle表字段操作,增 刪 改

alter table tablename add column datatype default value null not null alter table tablename modify column datatype default value null not null alter t...

oracle 增刪表字段。增刪外來鍵。

增加表字段 如何用sql語句給表增加字段?alter table 表名 add 列名 varchar 20 not null 怎麼樣增加預設值為null,屬性為varchar,長度為20的字段?alter table 表名 add 列名 varchar 20 default null 刪除表字段 a...