mysql insert if exists_mysql数据库中的insert if not exists
当记录不存在时插入,即insert if not exists。mysql中,插入(insert)一条记录很简单。
但在一些特殊应用中,插入记录前,需要检查这条记录是否已存在,只有当记录不存在时才执行插入操作。
本文将与大家一起探讨这个问题。
问题:创建一个表来存放客户信息,可以用 insert 语句插入信息到表中,但是如何才能保证不会插入重复的记录呢?
答案:使用 EXISTS 条件句防止插入重复记录。
例1:插入多条记录
假设有一个主键为 client_id 的 clients 表,可以使用下面的语句:
复制代码 代码如下:
INSERT INTO clients
(client_id, client_name, client_type)
SELECT supplier_id, supplier_name, 'advertising'
FROM suppliers
WHERE not exists (select * from clients
where clients.client_id = suppliers.supplier_id);
例2:插入单条记录
复制代码 代码如下:
INSERT INTO clients
(client_id, client_name, client_type)
SELECT 10345, 'IBM', 'advertising'
FROM dual
WHERE not exists (select * from clients
where clients.client_id = 10345);
注解:使用 dual 作表名,可以让你在 select 语句后面直接跟上要插入字段的值,即使这些值还不存在当前表中。
mysql insert if exists_mysql数据库中的insert if not exists相关推荐
- mysql 数据缓冲区,MySQL写入缓冲区在数据库中的作用( Change Buffer )
原标题:MySQL写入缓冲区在数据库中的作用( Change Buffer ) 介绍另外一种重要的数据变更日志,也就是InnoDB change buffer.Change buffer的主要目的是将 ...
- mybatis insert 重复数据2条_Mybatis框架lt;增gt;:添加一条数据到数据库中,insert...
在以上框架中,前面所搭建好的框架全部固定好,接下来,我们在此基础上实现功能使用insert添加一条数据到数据库中(1)在UserMapper接口中添加对应方法,//在数据库表中增添一条数据,返回为in ...
- C++ 开发中如何利用sql语句(insert语句)向数据库中插入变量
**问题描述:**在C/S开发过程中,当客户端向服务端发送接口(结构体)信息时,服务端需要将接收到的信息存入数据库,但是,常规insert语句只能存确定的值到数据,当客户端传入的值不确定,且为了保证代 ...
- mysql md5 sha1_SQL Server 数据库中的 MD5 和 SHA1
MD5 和 SHA1 是一种单向加密算法,常用于密码的验证等需要加密操作的场合,在一般情况下,开发人员可以通过 Delphi 或 PHP 这类语言自己编写相关函数或者使用自带的函数,然后将加密过的结果 ...
- ibatis insert mysql_让iBatis中的insert返回主键
让iBatis中的insert返回主键 [ibatis insert 返回 自增主键] parameterClass="RemarkInfo"> insert into SG ...
- oracle mysql 同义词,有关Oracle数据库中同义词的简单介绍
Oracle数据库中有关同义词的一些知识是我们本文主要要介绍的内容,首先我们先看一个语句,如下: create synonym table_name for user.table_name; 其中** ...
- oracle和mysql空字符串_Oracle数据库中对null值的排序及mull与空字符串的区别
order by排序之null值处理方法在对业务数据排序时候,发现有些字段的记录是null值,这时排序便出现了有违我们使用习惯的数据大小顺序问题.在Oracle中规定,在Order by排序时缺省认为 ...
- mysql支持非关系_说下oracle、mysql、非关系型数据库中的索引结构?
谢邀~~树懒君悉心整理了一篇索引结构方面的内容,跟各位知友分享分享~ Oracle 索引的数据结构:B-TreeOracle 数据库使用 B-trees 存储索引,来加速数据访问.若没有索引,你必须顺 ...
- mysql id in set_mysql数据库中find_in_set()和in()用法区别
mysql数据库中find_in_set()和in()用法区别 (2015-07-19 08:30:21) 标签: mysql数据库 find_in_set 在mysql中in可以包括指定的数字,而f ...
最新文章
- 《评人工智能如何走向新阶段》后记(再续21)
- transforms.compose()
- 使用fpm简单制作自定义rpm包
- XML序列化和反序列化(C#)
- myeclipse 删除历史工作空间记录
- 机器学习能诊断病情,还能预测患者出院后的情况?
- ios实践之tableView顶部“弹簧”图片
- IPsec ***数据传输过程
- java 多线程压测_java多线程Jmeter压测实现
- 20201219:力扣219周周赛题解
- Pytorch——可视化不同的优化器效果
- linux下实现getch()函数的功能,Linux下实现getch()函数功能
- OpenCV基础——IplImage中的widthStep
- kettle 使用教程(入门)
- 京东登录页面html代码_利用Python爬取京东商品的一种办法
- 【ESP 保姆级教程】疯狂点灯篇 —— 案例:ESP8266 + LED + 按键 + 阿里云生活物联网平台 + 公有版App + 天猫精灵(项目:我之家)
- CSC联合培养加拿大工签攻略
- DeR-ViT(CVPR2022)
- 利用Dreamweaver模板批量制作网页
- js去除数组中的空值,假值