MySQL數(shù)據(jù)更新操作的兩種辦法(數(shù)據(jù)可視化工具和SQL語(yǔ)句)
數(shù)據(jù)更新有兩種辦法:
1:使用數(shù)據(jù)可視化工具操作
2:SQL語(yǔ)句
添加數(shù)據(jù)
前面的添加數(shù)據(jù)命令一次只能插入一條記錄。如果想一次插入多條記錄怎么辦呢?
可以將子查詢的結(jié)果,以集合的方式向表中添加數(shù)據(jù)。
格式:INSERT INTO <表名> 子查詢
【例】創(chuàng)建一個(gè)新表‘清華大學(xué)出版圖書(shū)表’并將清華大學(xué)出版社出版的圖書(shū)添加到此表中。
CREATE TABLE thboPRIMARY KEY,
name VARCHAR(30) ,
author VARCHAR(10),
publish VARCHAR(20),
price DECIMAL(6,2)
)
INSERT INTO thbook
SELECT * FROM Book WHERE publish='清華大學(xué)出版社'插入數(shù)據(jù)
INSERT語(yǔ)句的基本語(yǔ)法:INSERT INTO 表名(列名列表) VALUES(值列表)
注意:列名列表 與 值列表 永遠(yuǎn)保持一致!
【例】試把數(shù)據(jù)“(’021B310001’,’張冬’, ’男’, ’1999-11-26’)”插入到Student表中。
INSERT INTO Student(stu_ID,name,sex,birthdate)
VALUES('021B310001','張冬','男','1999-11-26')
要插入的數(shù)據(jù)如果恰好與表的列數(shù)以及各列的順序保持一致,所以“列名列表”也可以省略掉,變成如下的形式:
INSERT INTO Student
VALUES('021B310001','張冬','男','1999-11-26')
【例】Student表中插入下面的數(shù)據(jù):
學(xué)生學(xué)號(hào):’021B310002’
學(xué)生姓名:’張三’
學(xué)生性別:’女’
INSERT INTO Student(stu_ID,name,sex)
VALUES('021B310002','張三','女')
或者:
INSERT INTO Student
VALUES('021B310002','張三','女',NULL)
刪除數(shù)據(jù)
語(yǔ)法格式:DELETE FROM 表名 WHERE 數(shù)據(jù);
【例】刪除Book表中的全部數(shù)據(jù)
DELETE FROM Book
【例】刪除價(jià)格大于100元的圖書(shū)
DELETE FROM Book WHERE price>100
【例】刪除王旭的借閱紀(jì)錄
子查詢方式實(shí)現(xiàn)
DELETE FROM Borrow WHERE Reader_id IN (SELECT Reader_id FROM Reader WHERE name='王旭')
修改數(shù)據(jù)
語(yǔ)法格式:UPDATE <表名> SET <列名=值|表達(dá)式>[,…][WHERE <更新條件>]
【例】所有的圖書(shū)價(jià)格打8折
UPDATE Book SET price = price*0.8
【例】所有“清華大學(xué)出版社”的圖書(shū)價(jià)格加價(jià)15%
UPDATE Book SET price = price*1.15 WHERE public='清華大學(xué)出版社'
【例】使用library數(shù)據(jù)庫(kù),把王旭的出生日期改成1995-3-2
update reader set birthdate='1995-3-2' where name='王旭'
【例】修改reader表中為021B310005的讀者的名字改為宋瑋凌,性別改為男
update Reader set name='宋瑋凌',sex='男' where Reader_ID='021B310005'
【例】將王旭所借圖書(shū)的日期更改為2022-5-1
子查詢方式
UPDATE Borrow SET Borrowdate= '2022-5-1' WHERE reader_ID IN (SELECT reader_ID FROM Reader WHERE name= '王旭')
多表連接方式:
UPDATE Borrow SET Borrowdate= '2022-5-1' FROM Borrow JOIN Reader ON Borrow.reader_ID = Reader.reader_ID WHERE name= '王旭'
更改‘張三’借閱‘高等數(shù)學(xué)’的借閱日期為‘2022-6-8’
UPDATE Borrow SET Borrowdate= '2022-6-8'
WHERE reader_ID IN
(SELECT reader_ID FROM Reader
WHERE name= '張三')
and book_ID IN
(SELECT book_ID FROM book
WHERE name= '高等數(shù)學(xué)')
mysql千萬(wàn)級(jí)數(shù)據(jù)量更新操作
首先對(duì)于千萬(wàn)級(jí)數(shù)據(jù)更新,如果一次性更新,肯定導(dǎo)致卡死,要關(guān)注內(nèi)存變化,注意看一下內(nèi)存。
可以嘗試寫(xiě)一個(gè)存儲(chǔ)過(guò)程,一次更新2000行,可以快很多。
總結(jié)
到此這篇關(guān)于MySQL數(shù)據(jù)更新操作的兩種辦法的文章就介紹到這了,更多相關(guān)MySQL數(shù)據(jù)更新操作內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
MySql數(shù)據(jù)引擎簡(jiǎn)介與選擇方法
在MySQL 5.1中,MySQL AB引入了新的插件式存儲(chǔ)引擎體系結(jié)構(gòu),允許將存儲(chǔ)引擎加載到正在運(yùn)新的MySQL服務(wù)器中2012-11-11
windows 10 下安裝mysql 5.7.17的簡(jiǎn)單筆記
之前一直在Linux下用MySQL,安裝也很簡(jiǎn)單,今天試一下windows下安裝,發(fā)現(xiàn)有很多坑,今天小編通過(guò)本教程給大家記錄下,一起看看吧2016-12-12
MySQL 存儲(chǔ)過(guò)程傳參數(shù)實(shí)現(xiàn)where id in(1,2,3,...)示例
一個(gè)MySQL 存儲(chǔ)過(guò)程傳參數(shù)的問(wèn)題想實(shí)現(xiàn)例如篩選條件為:where id in(1,2,3,...),下面有個(gè)不錯(cuò)的示例,感興趣的朋友可以參考下2013-10-10
MySQL性能優(yōu)化的一些技巧幫助你的數(shù)據(jù)庫(kù)
你完成了你的品牌新的應(yīng)用程序,一切工作就像一個(gè)魅力;突然間,一個(gè)大爆發(fā)的用戶你的MySQL服務(wù)器,您的網(wǎng)站已關(guān)閉,是什么問(wèn)題導(dǎo)致的呢?以下是MySQL性能優(yōu)化的一些技巧,將幫助你,幫助你的數(shù)據(jù)庫(kù)2013-01-01
Mysql子查詢關(guān)鍵字的使用方式(exists)
這篇文章主要介紹了Mysql子查詢關(guān)鍵字的使用方式(exists),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-07-07

