MySQL數據庫高級數據操作之新增數據
更新時間:2022年06月01日 10:48:53 作者:彭世瑜
這篇文章主要介紹了MySQL數據庫高級數據操作之新增數據,文章圍繞主題展開詳細的內容介紹,具有一定的參考價值,需要的小伙伴可以參考一下
多數據插入
只要寫一次insert,可以插入多條數據
基本語法:
insert into 表名 [(字段列表)] values (值列表), (值列表)...;
create table my_student(
id int primary key auto_increment,
name varchar(10)
);
insert into my_student (name) values ('張三'), ('李四'), ('王五');
mysql> select * from my_student;
+----+--------+
| id | name |
+----+--------+
| 1 | 張三 |
| 2 | 李四 |
| 3 | 王五 |
+----+--------+主鍵沖突
insert into my_student (id, name) values (1, '張飛'); ERROR 1062 (23000): Duplicate entry '1' for key 'PRIMARY'
1、主鍵沖突更新
如果插入過程中主鍵沖突,那么采用更新方式
insert into 表名 [(字段列表)] on duplicate key update 字段=新值; insert into my_student (id, name) values (1, '張飛') on duplicate key update name = '張飛'; mysql> select * from my_student; +----+--------+ | id | name | +----+--------+ | 1 | 張飛 | | 2 | 李四 | | 3 | 王五 | +----+--------+
2、主鍵沖突替換
replace into 表名 [(字段列表)] values (值列表); replace into my_student (id, name) values (1, '劉備'); mysql> select * from my_student; +----+--------+ | id | name | +----+--------+ | 1 | 劉備 | | 2 | 李四 | | 3 | 王五 | +----+--------+
蠕蟲復制
一分為二,成倍增加
從已有的數據中獲取數據,并且插入到數據表中
insert into 表名 [(字段列表)] select */字段列表 from 表名; insert into my_student (name) select name from my_student; mysql> select * from my_student; +----+--------+ | id | name | +----+--------+ | 1 | 劉備 | | 2 | 李四 | | 3 | 王五 | | 4 | 劉備 | | 5 | 李四 | | 6 | 王五 | +----+--------+
注意:
- 蠕蟲復制通常是重復數據,可以短期內復制大量的數據,從而測試表的壓力
- 需要注意主鍵沖突
到此這篇關于MySQL數據庫高級數據操作之新增數據的文章就介紹到這了,更多相關MySQL新增數據內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
當mysqlbinlog版本與mysql不一致時可能導致出哪些問題
這篇文章主要介紹了當mysql服務器為mysql5.6時,mysqlbinlog版本不對可能導致出哪些問題,下面通過模擬2種場景分析此類問題,需要的朋友可以參考下2015-07-07
mysql8.0.30安裝配置最詳細教程(windows?64位)
這篇文章主要給大家介紹了關于windows?64位下mysql8.0.30安裝配置的相關資料,主要以圖片的形式展示安裝教程x,簡單易懂,小白專屬,需要的朋友可以參考下2022-09-09
CentOS7.5 安裝 Mysql8.0.19的教程圖文詳解
這篇文章主要介紹了CentOS7.5 安裝 Mysql8.0.19的教程,本文圖文并茂給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下2020-01-01

