MySQL新增数据、主键冲突、蠕虫复制 - Go语言中文社区

MySQL新增数据、主键冲突、蠕虫复制


新增数据
标准语法
Insert into 表名 [(字段列表)]values(值列表);
在数据插入的时候,假设主键对应的值已经存在:插入一定会失败!

主键冲突

当主键存在冲突的时候(duplicate key)可以选择性的进行处理,更新和替换
主键冲突:更新操作
Insert into 表名[(字段列表:包含主键)] values(值列表)on duplicate key update 字段=新值

-- 插入数据
Insert into my_class values (‘PHP0810’,’B205’);
Insert into my_class values (‘PHP0810’,’B203’);

-- 主键冲突:更新
Insert into my_class values (‘PHP0810’,’B203’) on duplicate key update room = ‘B203’

在这里插入图片描述

主键冲突:替换
Insert into 表名 [(字段列表:包含主键)] values (值列表)

-- 主键冲突 :替换
Replace into my_class values (‘PHP0710’,’A203’);

在这里插入图片描述
在这里插入图片描述

蠕虫复制

从已有的数据中获取数据,然后将数据有进行新增操作:数据成倍增加。

表创建的高级操作,从已有已有表创建新表(复制表结构)
Create table 表名 like 数据库.表名;
– 复制创建表
Create table my_copy like my_gbk;

蠕虫复制:先查出数据,然后将查出的数据新增一遍
Insert into 表名 [(字段列表)] select 字段列表 /* from 数据表名

-- 蠕虫复制
Insert into my_copy select * from my_collate_ci;

在这里插入图片描述

Insert into my_copy select * from my_copy;

在这里插入图片描述
蠕虫复制的意义:
1.从已有表拷贝数据到新表中;
2.可以迅速的让表中的数据膨胀到一定的数量级:测试表的压力以及效率;

版权声明:本文来源CSDN,感谢博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/qq_38807395/article/details/82909452
站方申明:本站部分内容来自社区用户分享,若涉及侵权,请联系站方删除。

0 条评论

请先 登录 后评论

官方社群

GO教程

猜你喜欢