MySQL操作表中數(shù)據(jù)

操作表中數(shù)據(jù)

數(shù)據(jù)表是數(shù)據(jù)的載體,在使用的過(guò)程中我們需要頻繁的對(duì)數(shù)據(jù)表中的數(shù)據(jù)進(jìn)行增減、刪除和修改操作。MYSQL中提供了對(duì)數(shù)據(jù)進(jìn)行添加、刪除和修改的完整功能,提高了數(shù)據(jù)庫(kù)的管理效率

SQL中的表達(dá)式和邏輯運(yùn)算符和邏輯運(yùn)算符

SQL命令中的表達(dá)式和開(kāi)發(fā)語(yǔ)言中的表達(dá)式定義是一樣的,都是指用 運(yùn)算符將同類(lèi)型的數(shù)據(jù)(如:變量、常量、函數(shù)等) 按一定的規(guī)則連接起來(lái)的具有特定意義的語(yǔ)句,表達(dá)式可以分為條件表達(dá)式和邏輯表達(dá)式

表達(dá)式

在數(shù)據(jù)庫(kù)中的表達(dá)式一般是指由常量、變量、函數(shù)和運(yùn)算符組成。需要特別注意的是單個(gè)常量、變量和函數(shù)亦可稱(chēng)為表達(dá)式。SQL語(yǔ)言中包括三種表達(dá)式,第一種<表名>后跟<字段名表達(dá)式>,第二種是select語(yǔ)句后的<目標(biāo)表達(dá)式>,第三種是where語(yǔ)句后的<條件表達(dá)式>

比較運(yùn)算符

比較運(yùn)算符就是用來(lái)比較兩個(gè)數(shù)的大小,其結(jié)果是1、0或者Null,SQL中的條件運(yùn)算符其意義如下

運(yùn)算符 含義
> 大于
>= 大于等于
< 小于
<= 小于等于
= 等于
!= 或<> 不等于
IS null 是否為空
IS NOT NULL 是否不為空
IN 判斷一個(gè)值是IN列表中的任意一個(gè)值
NOT IN 判斷一個(gè)值不是IN列表中的任意一個(gè)值
LIKE 通配符匹配
BETWEEN AND 判斷一個(gè)值是否在兩個(gè)值之間

邏輯運(yùn)算符

SQL命令支持的邏輯運(yùn)算符有 AND( 或者 &&) 、 Or( 或者|| ) 和 Not(或者 !)。

當(dāng)一個(gè)語(yǔ)句中使用了多個(gè)邏輯運(yùn)算符時(shí),運(yùn)算時(shí)先求Not的值,然后求And的值,最后再求Or的值

向表中插入數(shù)據(jù)

數(shù)據(jù)可時(shí)用來(lái)存放數(shù)據(jù)的,如何才能能高效的實(shí)現(xiàn)數(shù)據(jù)添加工作時(shí)本課程的一個(gè)重點(diǎn)。在數(shù)據(jù)庫(kù)中最常用的添加數(shù)據(jù)命令就是 insert 語(yǔ)句

一次添加一條數(shù)據(jù)

語(yǔ)法

insert [INTO] table_name[(column1,column2,column3,...)]
values (value1,value2,value3,...);

語(yǔ)法說(shuō)明:
TABKE_name 表名;

column:列名

value: 需要添加到數(shù)據(jù)表的值,和column對(duì)應(yīng)

into 語(yǔ)法關(guān)鍵字可以省略

注意:

  1. 添加記錄但不指定所有字段值,不指定字段時(shí),該字段必須為空;
  2. 自動(dòng)增長(zhǎng)列盡量不要指定值
  3. 有默認(rèn)值約束的列不指定值時(shí)將使用默認(rèn)值
  4. 主鍵列、唯一約束列的值不能重復(fù);
  5. 值于字段名必須一一匹配,但是可以不按照表中字段順序指定

一次添加多行數(shù)據(jù)

在數(shù)據(jù)庫(kù)的使用過(guò)程中,偶爾會(huì)需要一次添加多條數(shù)據(jù),這時(shí)我們可以使用 insert 語(yǔ)句可以一次添加多條數(shù)據(jù)

語(yǔ)法格式:

insert [into] table_name[(column1,column2,column3....]
values
(value1,value2,value3,....),
(value1,value2,value3,....),
(value1,value2,value3,....),
(value1,value2,value3,....),
(value1,value2,value3,....);

修改表中數(shù)據(jù)

數(shù)據(jù)庫(kù)中的數(shù)據(jù)不是永遠(yuǎn)不變的,他會(huì)隨著時(shí)間,業(yè)務(wù)的變化而變化。當(dāng)需要修改現(xiàn)有數(shù)據(jù)時(shí),就需要使用 update 語(yǔ)句

語(yǔ)法:

update table_name
set 
ci=olumn_name=value,column_name=value,,....,column_name=value
[where<表達(dá)式>]

語(yǔ)法說(shuō)明

set: 是對(duì)指定的字段進(jìn)行修改

column_name:要被修改值的字段名

value 新增

where 條件語(yǔ)句可選的 代表修改數(shù)據(jù)時(shí)的條件,如果不選擇該語(yǔ)句,代表的則是修改表中的全部數(shù)據(jù)

修改表中的全部數(shù)據(jù)

修改表中的全部數(shù)據(jù)時(shí)一種不太常用的操作。

根據(jù)條件修改表中的數(shù)據(jù)

根據(jù)條件修改表中的數(shù)據(jù)時(shí)一種常用的操作。根據(jù)條件修改表中的數(shù)據(jù),是使用upadte...set....where ... 語(yǔ)句來(lái)完成的

刪除表中的數(shù)據(jù)記錄

使用delete

MySQL中刪除操作時(shí)數(shù)據(jù)庫(kù)中比較常用的操作之一。

語(yǔ)法:

delete from table_name  [where search-condition]

語(yǔ)法說(shuō)明
table_name :要?jiǎng)h除數(shù)據(jù)的表明

search-condition : 篩選條件

刪除所有信息:
案例:刪除studentinfo表中所有的記錄

delectEfrom studentinfo

注意:

不要輕易使用delect命令,在使用前要慎重考慮。因?yàn)榇蠖鄶?shù)數(shù)據(jù)中的提交方式是自動(dòng)的,在沒(méi)有標(biāo)識(shí)為事務(wù)的情況下是不能回滾的。DELECT命令是要記錄到日志的操作,所以如果五一中使用 DELECT 命令,只能從備份的數(shù)據(jù)庫(kù)中進(jìn)行恢復(fù)

根據(jù)WHERE條件刪除數(shù)據(jù)

如果要?jiǎng)h除數(shù)據(jù)庫(kù)中指定的多條信息,只能通過(guò)where語(yǔ)句來(lái)實(shí)現(xiàn),

使用TRUNCATE

DELECT 雖然能夠刪除表中全部的數(shù)據(jù),但是DELECT 的操作是要記錄在日志文件中的,如果數(shù)據(jù)表的數(shù)據(jù)量比較大,刪除的速度就會(huì)收到影響,而且 DEKECT 刪除數(shù)據(jù)后,表所占的空間并沒(méi)有收回

TRUNCSTE 可以刪除表中的所有數(shù)據(jù),只留下一個(gè)表的結(jié)構(gòu)定義。 使,用TRUNCSTE 是不記錄日志操作的,因此其速度要比 DELECT語(yǔ)句塊好多。 而且TRUNCSTE 語(yǔ)句將釋放數(shù)據(jù)表的數(shù)據(jù)和索引所占據(jù)的所有空間,以及釋放所有索引分配的空間

語(yǔ)法如下:

TRUNCATE TABLE TABLE_NAME 

注意:

TRUNCATE TABLE命令不能用于有外鍵約束的表,如果存在外鍵約束則必須使用DELETE命令來(lái)刪除數(shù)據(jù)

總結(jié):

SQL中的運(yùn)算符:

算數(shù)運(yùn)算符 關(guān)系運(yùn)算符、邏輯運(yùn)算符、賦值運(yùn)算符。

使用SQL語(yǔ)句增、刪、改、數(shù)據(jù)

Insert插入數(shù)據(jù)

Update 修改數(shù)據(jù)

Delete刪除數(shù)據(jù)

TRUNCATE 刪除數(shù)據(jù)

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容