dml語句是sql數(shù)據(jù)操作語句之一,可以對(duì)表進(jìn)行增刪改查,本篇文章對(duì)初學(xué)者來說又或是需要進(jìn)行sql復(fù)習(xí)的人來說都有很大的幫助,跟著小編一起學(xué)習(xí)吧。
在敘述如何對(duì)數(shù)據(jù)表進(jìn)行增刪改查之前,我們先創(chuàng)建一個(gè)數(shù)據(jù)表,叫做students,便于后續(xù)所有操作,如下圖所示:
插入記錄
insert into 表名(字段1,字段2, ...,字段n) values(值1,值2,... ,值n);
其中:
-
表名:是我們進(jìn)行操作的數(shù)據(jù)表,如我操作的是表students;
-
字段:是需要操作的字段;
-
值:是需要添加的數(shù)據(jù)。
通過insert into
可以為我們的字段添加數(shù)據(jù),可以不用指定字段名,但是values后面的順序應(yīng)該與字段排序一致。向下面這兩種都是可以給數(shù)據(jù)表插入數(shù)據(jù)的。sql語句及其顯示結(jié)果如下:
insert into
不僅可以一次插入一條數(shù)據(jù),還可以一次性插入多條記錄。
insert into 表名(字段1,字段2, ...,字段n) values (值1,值2,... ,值n), (值1,值2,... ,值n) ;
sql語句以及他的輸出結(jié)果可以看下圖:
查詢數(shù)據(jù)
在本篇文章我們只講最簡單的查詢。
select * from 表名
通過本條語句,我們可以查詢到符合條件的記錄。*代表你查詢表里的所有字段,如果我們查詢某一字段,只需要將*改成那一字段即可。
在插入數(shù)據(jù)的時(shí)候我們就用到了select * from
,我們可以看上面插入數(shù)據(jù)的代碼就可以看到結(jié)果。
如果想要查詢id這一字段的數(shù)據(jù),那我們只需要將*
改成id
。
這樣就顯示id這一字段的數(shù)據(jù)了。
更新記錄
更新一個(gè)表
update 表名 set 字段1=值1,字段2=值2,...,字段n=值n[where條件];
其中:
-
條件:是我們更新表所需要滿足的要求。
如果沒有寫更新所需要的條件,那么所有值都會(huì)被更新。例如:
可以看到6條語句都發(fā)生改變,如果不希望所有語句都更新,我們需要寫上條件,如:
由于寫上了條件,所以只有第三條語句被更新了。
更新多個(gè)表中數(shù)據(jù)
update 表1,表2,...表n set 表1.字段1=表達(dá)式1,...,表n.字段n=表達(dá)式n[where條件];
多表更新大多是用在根據(jù)一個(gè)標(biāo)的字段來動(dòng)態(tài)更新另一表的字段。我們可以新創(chuàng)建一個(gè)數(shù)據(jù)表名叫stu,在里面放上數(shù)據(jù):
有了這個(gè)數(shù)據(jù)表我們就可以多表更新了,sql語句和其結(jié)果如下:
我們可以看到兩個(gè)數(shù)據(jù)表的內(nèi)容都更新了。
刪除記錄
delete from 表名 [where 條件];
刪除記錄與更新記錄一樣都有一個(gè)條件,不加where條件將會(huì)把表中所有記錄刪除,所以操作要小心。
光說沒用辦法體會(huì),我們看看示例:
由于不加條件會(huì)刪除所有數(shù)據(jù),我這里就不再演示了。
推薦教程:mysql視頻教程