插入 刪除 修改表資料

2021-05-23 22:18:41 字數 3636 閱讀 8939

1、插入表資料

insert [low_priority|delayed|high_priority] [ignore]

[into] tbl_name [(col_name,...)]

values (,...),(...),...

|set col_name=,...

[on duplicate key update col_name=expr,...]

tbl_name:被操作的表名。

col_name:需要插入資料的列名。如果給全部列插入資料,列名可以省略

values:包含各列需要插入的資料清單。

(1)expr:插入的值,其資料型別與列的資料型別必須一致

(2)default:指定為該列的預設值

修飾符:

1、low_priority:使用以後,當原有客戶端正在讀取資料時,延遲操作的執行,知道沒有其他客戶端從表中讀取資料為止

2、delayed:將待插入的行放到乙個緩衝器中。如果表正在被使用,伺服器會保留這些行。當表空閒時,伺服器開始插入行,並定期檢查是否有新的讀取請求

3、high_priority:使得操作優先執行

4、ignore:執行語句時出現的錯誤被當做警告處理

5、on duplicate key update...:若key出現重複值,則根據update後的語句修改舊行

6、set子句:set子句用於直接給列指定值

補充1: 使用insert into...select...,可以快速地從乙個或多個表中向乙個表插入多個行,語法格式如下:

insert [low_priority|high_priority] [ignore] [into] tbl_name [(col_name,...)]

select...

[on duplicate key update col_name=expr,...]

補充2:將insert替代為replace,可以在插入資料前將與新紀錄鍵衝突的舊紀錄刪除

補充3:一般可以用路徑的形式來儲存

例如:insert into xs

2、刪除表資料

1、使用delete語句刪除資料 

delete [low_priority] [quick] [ignore] frome tbl_name

[where where_definition]

[order by ...]

[limit row_count]

說明:

quick修飾符:可以加快部分種類的刪除操作的速度

from 子句:用於說明從何處刪除資料,tbl_name為要刪除資料的表名

where子句:where_definiton中的內容為指定的刪除條件.如果省略where子句則刪除該錶的所有行

order by子句:各行按照子句中指定的順序進行刪除,此子句只在於limit聯用時才起作用

limit子句:用於告知伺服器在控制命令被返回到客戶端前被刪除的行的最大值

delete [low_priority] [quick] [ignore] tbl_name[,*] [,tbl_name[.*]...]

from table_references

[where where_definition]

delete [low_priority] [quick] [ignore]

from tbl_name[.*] [, tbl_name[.*]...]

using table_references

[where where_definition]

例如(有3個表t1,t2,t3,刪除t1中id值等於t2的id值的所有行和t2中id值等於t3的id值的所有行):

delete t1,t2

from t1,t2,t3

where t1.id=t2.id and t2.id=t3.id;

delete from t1,t2

using t1,t2,t3

where t1.id=t2.id and t2.id=t3.id;

2、使用truncate table 語句刪除表資料

truncate table table_name

注:參與了索引和檢視的表,不能使用truncate table刪除資料,而應使用delete語句

3、修改表資料

update [low_priority] [ignore] tbl_name

set col_name1=expr1 [,col_name2=expr2...]

[where where_definition]

[order by...]

[limit row_count]

例如:

update xs

set 學號='081251',備註='轉專業學習'

where 姓名='羅林琳'

update [low_priority] [ignore] table_references

set col_name1=expr1 [,col_name2=expr2...]

[where where_definition]

例如:

update tb1,tb2 set tb1.pwd='aaa',tb2.pwd='bbb'

where tb1.id=tb2.id;

MySQL資料插入 修改 刪除

insert 語句的定義 insert用於向乙個已有的表中插入新行。insert values語句根據明確指定的值插入行。讓我們先來看一下insert語句標準的定義,放在內的都是可以省略的 insert low priority delayed high priority ignore into t...

刪除表 為列插入值 修改資料 修改特定的資料

刪除無關聯的表 drap table if exists table name1,table name2 例如 drap table scores 刪除有關聯關係的資料表 學生表,成績表 先解除關聯關係 外來鍵 alter table f table name drop foreign key co...

mysql修改 MySQL資料插入 修改 刪除

insert 語句示例 為了簡單說明一下效果,我們來建立如下結構的mysql資料表,來方便後面的一些示例 create table links name varchar 255 not null default address varchar 255 not null default 插入一條資料,...