当前位置:首页 > 日记 > 正文

几个操作MySQL插入(延迟,忽略,重复关键更新)

几个操作MySQL插入(延迟,忽略,重复关键更新)
插入语法
{ } {插入low_priority延迟high_priority忽略} | |
{在} { }(tbl_name col_name,…)
({ } |默认值表达式,…),(…),…
{重复密钥更新col_name =表达式,…}
或:
{ } {插入low_priority延迟high_priority忽略} | |
{在} tbl_name
设置默认col_name = { } | expr,…
{重复密钥更新col_name =表达式,…}
或:
插入high_priority } { } { low_priority忽略|
{在} { }(tbl_name col_name,…)
选择…
{重复密钥更新col_name =表达式,…}
一、延迟使用
使用延迟插入操作
延迟调节器应用于插入和替换语句。当延迟插入操作到达时,
服务器将数据线放入队列中,并立即将状态信息返回给客户机,以便客户。
在数据表真正插入记录之前,可以继续操作。
数据在表中读取,队列中的数据保存到没有读写器。
开始在延迟数据线(延迟行)队列中插入数据行。
还要检查是否有一个新的读取请求到达和等待。如果存在延迟数据线队列,则挂起。
允许读取器继续操作。当没有读取器时,服务器再次开始插入延迟的数据行。
此过程已完成,直到队列为空。
应注意的几个问题:
插入延迟应仅用于指定值列表的INSERT语句。服务器忽略插入延迟的延迟…SELECT语句。
服务器忽略延迟插入的延迟…关于重复更新语句。
由于插线,声明立即返回,所以不能用last_insert_id()得到auto_increment价值,auto_increment值可由报表生成。
对于SELECT语句,在这些行真正插入之前,延迟行是不可见的。
延迟在从属复制服务器中被忽略,因为延迟不会产生与从属服务器中的主服务器不相同的数据。
值得注意的是,队列中的所有行,目前只存储在记忆中直到他们插入表。这意味着,如果你强行中止mysqld(例如,使用杀9)
如果mysqld意外停止,所有的线都没有写入到磁盘将丢失。
使用两个,忽略
忽略是相对于标准SQL的MySQL的扩展。如果在新表中有一个重复键,
或在启动严格模式后出现警告时,使用忽略控制更改表的操作。
如果未指定忽略,则在重复关键字错误发生并返回到前一步时,复制操作将被放弃。
如果指定了忽略,对于重复关键字的行,只使用第一行,删除其他冲突行。
并纠正错误值,使其尽可能接近正确值。
将忽略插入到TB(…)值(…)
它不需要检查它是否存在,它被忽略,没有添加。
三的使用,关于重复密钥更新
如果在重复密钥更新和插入行上指定,它将在唯一索引或主键中产生重复的值,然后执行旧行更新。例如,如果列A被定义为唯一且包含值1,则以下两个语句具有相同的效果:
MySQL >插入表格(A,B,C)值(1,2,3)
重复密钥更新C = C + 1 - >关于;

更新表集C=C + 1,其中a = 1;
如果将行插入为新记录,则受影响行的值为1;如果更新原始记录,则受影响行的值为2。

注意:如果列B是唯一的列,则插入等同于UPDATE语句:

更新表集C = C + 1,其中A = 1或B = 2限制1;
如果a = 1或b = 2匹配多行,则只更新一行。一般来说,您应该避免使用带有多个关键字的表使用重复关键字子句。

你可以使用价值(col_name)功能在更新条款引用列的值从插入的插入部分…UPDATE语句。换句话说,如果没有重复的关键字冲突,价值观(col_name)在更新条款是指可以插入col_name.this函数值,特别适用于多行插入的值()函数仅在插入有意义…UPDATE语句,并在其他时间返回null。

实例:

MySQL >插入表格(A,B,C)值(1,2,3),(4,5,6)
复制密钥更新>关于C =值(a)+值(b);
本声明与以下两项声明相同:

MySQL >插入表格(A,B,C)值(1,2,3)
重复密钥更新C = 3 - >关于;
MySQL >插入表格(A,B,C)值(4,5,6)
重复密钥更新C = 9 - >关于;
当您使用重复密钥更新时,延迟选项将被忽略。
摘要:延迟被用作一个快速插入,而不是非常关注失败,并提高插入性能。
忽略只注意与记录、添加和忽略相对应的主键的不存在。
重复密钥更新在添加时操作,注意非主键列,并注意与忽略的差异。有指定列的更新,没有添加。

相关文章

shnlog是shnlog.exe-使用

shnlog是shnlog.exe-使用

电脑软件,shnlog,exe,评论:详细的介绍了shnlog.exe - shnlog过程 进程文件:shnlog或shnlog.exe 进程名称:TROJ / puper-a木马 过程类别:安全风险的过程 英文描述: shnlog.exe由TROJ / puper-a木马添加过程。这个程序,特洛伊木马,它也被称为以下…

linux查找过程和终止进程操作的相

linux查找过程和终止进程操作的相

查找,进程,操作,命令,命令操作,点评:Linux操作系统的使用,软件难免会遇到一些问题,卡住了;然后,你需要在linux下使用杀死命令的强大的结束进程,这在Linux系统中是一件非常容易的事情。你只需要杀掉XXX,其中XXX代表了与软件操作相关的过程pid数字。…

PHP通过字符串调用函数示例。

PHP通过字符串调用函数示例。

字符串,调用函数,示例,电脑软件,PHP,1。call_user_func 复制代码代码如下所示: 函数A(b,$){ 回声$; 回声$; } call_user_func('a',111 call_user_func('a',333 111222333444 显示 > 调用类的内部方法很奇怪。它是数组,不知道开发人员如何考虑…

对hphmon03.exe查询是什么hphmon03

对hphmon03.exe查询是什么hphmon03

查询,过程,功能,电脑软件,exe,点评:hphmon03.exe是HP打印机配置和诊断程序,在系统托盘 进程文件:hphmon03或hphmon03.exe 加工名称:休利特帕卡德印刷品 过程类别:安全风险的过程 英文描述: hphmon03.exe显示一个托盘图标,你可以访问你,它也被称为…

kswebshield.exe是什么文件分析和

kswebshield.exe是什么文件分析和

文件,过程,电脑软件,kswebshield,exe,点评:kswebshield.exe是什么kswebshield的过程是怎样的kswebshield.exe进程的CPU占用率100%是什么意思请看这篇文章的细节。 kswebshield.exe文件过程分析 进程文件:kswebshield或kswebshield.exe 过…

alg.exe的过程是怎样的如何识别alg

alg.exe的过程是怎样的如何识别alg

是怎样,如何识别,过程,电脑软件,alg,综述:起源与作用 的alg.exe过程是微软为其Windows操作系统发布了重要的系统进程,其在系统描述:应用层网关服务(应用层网关服务,有时被描述为一个应用层防火墙、应用代理防火墙或第三代防火墙)。可信网络用户想…

vzcdbsvc.exe过程的意义是什么

vzcdbsvc.exe过程的意义是什么

意义,过程,电脑软件,vzcdbsvc,exe,评论:vzcdbsvc.exe过程的详细解释 进程文件:vzcdbsvc或vzcdbsvc.exe 进程名称:娱乐 过程类别:安全风险的过程 英文描述: vzcdbsvc.exe是一个过程,属于娱乐工作室。这就是娱乐,它也被称为对与错。 中文参考: 对不…

排名第一的一万本书热爱阅读,创造多

排名第一的一万本书热爱阅读,创造多

平台,创造,本书,一万,电脑软件,随着生活节奏的加快,随着移动阅读终端的普及和4G通信技术的提高,电子阅读已成为一种新的时尚,在享受智能阅读的同时,追求极致的阅读体验也成为阅读爱好者的一个深层次需求。 如今,寻找一个跨平台的手机阅读软件并…

PHP示例计算机访问和移动电话访问

PHP示例计算机访问和移动电话访问

示例,移动电话,电脑软件,PHP,因此,我研究了如何使用PHP来确定Web页面是否是计算机访问或手机访问,然后加载不同的CSS来实现对移动电话和计算机的正常访问。 这个网站查了很多资料,终于找到了一个适合的,更好的使用的代码,同时也希望能给大家一…

Linux的差异比较文件和通讯指挥(找

Linux的差异比较文件和通讯指挥(找

文件,到新,差异,内容,电脑软件,点评:在Linux下使用命令行比较两个文件找到新内容的通信指挥,有需要的朋友。 这个项目中的一个奇怪的错误是由一行简单代码造成的。 代码函数:比较两个UNIX文本文件,查找和打印文本2,比文本1多。 例如,代码调用差异…

fsm32.exe的功能是什么该fsm32过程

fsm32.exe的功能是什么该fsm32过程

查询,功能,过程,电脑软件,exe,点评:fsm32.exe是F-Secure杀毒软件相关程序,用于管理计划任务的病毒扫描 进程文件:fsm32或fsm32.exe 进程名称:F-Secure公司经理 过程类别:安全风险的过程 英文描述: fsm32.exe是F-Secure的反病毒应用程序的一部分…

MySQL数据库中查询语句的优化

MySQL数据库中查询语句的优化

优化,查询语句,数据库中,电脑软件,MySQL,很多时候,基于MySQL的网站性能瓶颈经常出现在MySQL上,而MySQL中最常用的语句是查询语句。因此,MySQL数据库中查询语句的优化就显得非常重要: 1,确定是否不需要从MySQL数据库中请求的数据,如以下内容: (1)查…