MySQL 插入 更新 刪除資料

2021-08-13 20:43:54 字數 3098 閱讀 4089

我們吧檢索單獨拉出去,是因為在jdbc中對於檢索的處理,和對於插入,更新,刪除操作是不同的。現在我們將分別介紹mysql的insert插入語句,update更新語句,delete刪除語句。

part 1 插入資料

sql語句中,insert是用來插入的(或新增),插入或新增乙個行到資料庫中。有以下幾種方式:

1.插入完整的行;

2.插入行的一部分;

3.插入多行;

4.插入某些查詢結果;

1.插入完整的行:

insert

into git values('min',5,6);

此例子插入乙個新行到表中,粗出到每個列中的資料,在values中依次給出,對每個列我們必須提供乙個值,如果說插入的這一行,有一些列的值是他不具備的,我們可以定義他的這一行的這一列的值為 null(假定資料庫制定的表勻速我們制定空值)。

各個列必須以它們在表定義中出現的詞素填充!剛剛描述過,如果我們不想給他乙個值,但是規定我們又不能省略,那我們可以給他乙個空值null

這樣的語法雖然很簡答,但是並不安全,應該盡量避免使用!

更安全的方法如下,就是麻煩些:

insert

into git(name,git_id,state) values('bi',6,4);

顯而易見,現在我們在表名後,明確指出了列名,在插入時候,values中第乙個值對應第乙個列名,第二個值對應第二個列名,以此類推。

如果說表中有哪一列,設定的時候,設定為允許為null,比如我們上面的state列,那我們就可以這樣:

insert

into git(name,git_id) values('wem',7);

看見了嗎?這就是列省略。雖然表中確實有state這一項,但是我們因為他允許為空,所以在插入式都沒有去搭理他,這也是可以的。

tip 1 仔細地給出值:

不管使用那種insert語法,都必須給出values正確的數目。如果不提供列名,則必須給每個列表提供乙個值;如果提供列名,則必須對每個列出的列給出乙個值。

tip 2 列省略:

如果表的定義允許,則可以在insert操作中省略這些列,如果允許呢?滿足如下某個條件:

1.該列定義為null值(無值或空值);

2.在表定義中給出預設值。這表示如果不給出值,將使用預設值。

tip 3 提高整體效能:

在資料庫中,我們經常被客戶訪問,insert操作可能是非常耗時地,而且他可能降低等待處理的select語句的效能。

所以如果我們的資料檢索更重要一些(大部分情況),那我們可以通過在insert和into之間新增關鍵字 low_priority,來只是降低insert語句的優先順序。

2.插入多個行:

insert可以插入一行到乙個表中。但如果你想插入多個行怎麼辦?可以使用多條insert,這是當然的,但是我們也可以一次提交他們:

insert

into git(name,git_id) values('wen',8),('xiao',9);

類似這樣,單條的insert語句有多組值,沒組織用一堆圓括號括起來,用逗號分隔。

3.插入檢索出的資料

insert一般用來給表插入乙個指定列值的行。但是insert還存在另一種形式,就是我們可以將一條select語句的結果插入表中。這就是我們說的 insert select。

insert

into git (name, git_id)

select name,

code_id

from

coder

where code_id = 25;

part 2 更新和刪除資料

1.更新資料

為了更新表中資料,我們可以使用update語句。可採用兩種方式使用update:

①更新表中特定行

②更新表中所有行

我們先來看更行特定行:

update coder set name='er',code_id=20

where code_id = 23;

update語句總是以要更新的表的名字開始。在此例子中,要更新的表的名字為coder。 我們可以看見,在更新多個列的時候,只需要使用單個set命令,每個「列=值」對之間用逗號分隔(最後一列不用逗號)。

tip 1 不要省略where子句:在使用的時候,如果我們不忘記了增加where條件,就會更行表中的所有行。另外我們其實還是可以限制和控制update語句的使用的

tip 2 在update語句中使用子查詢: update語句可以使用子查詢,使得能用select語句檢索出的資料更新列資料

另外!!! 如果我們想要刪除某個列!!!注意!是列! 我們可以設定這一行的這一列為空:

update coder set name = null

where coder_id = 1

part 3 刪除資料

為了從乙個表中刪除資料,我們可以使用delete語句。可以用兩種方式使用你delete:

1.從表中刪除特定的行;

2.從表中刪除所有的行;

在此強調!我們刪除列,使用update語句將,某一列設定為空。

如果不是為了刪除整行,就一定要記得使用where子句。

delete

from coders where coder_id = 1

delete刪除整行而不是刪除列。

part 4 一些建議

1.除非是確實打算更新或刪除一整行,否則絕對不要使用不帶where的update或delete句子

2.保證每個表都有主鍵!盡情利用我們的where子句功能;

3.要進行update 和 delete 語句前,我們應該先用select語句進行檢測,保證他過濾的是正確的記錄

MySQL插入更新刪除資料

更新資料 select from person where id 10 update person set age 15,name liming where id 10 select from person where id 10 update person set info student whe...

MySQL 插入 更新 刪除資料

插入 更新 刪除資料 一 插入資料 插入資料使用 insert 語句向表插入資料記錄,插入資料有四種方式,即為所有字段插入資料 為指定字段輸入資料 同時插入多條資料以及插入查詢結果。先建立乙個表,方便下面舉例 create table student stu id int 10 primary ke...

MySQL插入更新刪除資料

insert into customers values null pep e.lapew 100 main street los angeles ca 90046 usa null null insert into customers cust name,cust address,cust cit...