草庐IT

update_many

全部标签

mysql 从转储 : ERROR 1452 (23000) at line 13: Cannot add or update a child row: a foreign key constraint fails 加载

我使用mysqldump和以下命令转储了一个mysql数据库:mysqldump--no-create-db--no-create-info--compact--single-transaction--complete-insert--extended-insert=FALSE--flush-logs-uroot-ppassworddatabasename>databasename.db.data.dump.sql我使用上述特定选项的原因是我需要:只转储数据不创建任何DDL语句,如CREATETABLE等我有一个生成CLEAN数据库的脚本(即具有数据结构的数据库-表、索引等,但没有数据

java - org.hibernate.exception.ConstraintViolationException : Could not execute JDBC batch update

虽然数据已成功插入,但我得到了下面提到的堆栈跟踪。Hibernate:selectattendee_.attendeeId,attendee_.attendeeNameasattendee2_1_fromattendeeattendee_whereattendee_.attendeeId=?Hibernate:selectattendee_.attendeeId,attendee_.attendeeNameasattendee2_1_fromattendeeattendee_whereattendee_.attendeeId=?Hibernate:insertintoevent(eve

mysql - MySQL 上的 join insert/update 是原子操作吗?

在一个Mysql数据库中,每个表都基于启用了自动提交的InnoDB,带有子查询和/或连接的查询是否是原子的?例子:INSERTINTOusersSELECT(x,y,z)FROMusers,commentsWHEREusers.id=comments.user_id;(加入)更新用户,评论SETusers.x=x1WHEREusers.age>30;(加入)UPDATEusers,commentsSETusers.x=x1,comments.y=y1WHEREusers.age>30;(加入)UPDATEusers,commentsSETusers.x=x1,comments.y=y1

mysql - 错误 : Error 1067: Invalid default value for ON UPDATE CURRENT_TIMESTAMP

我从Workbench运行脚本。这是完整的脚本:SET@OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS,UNIQUE_CHECKS=0;SET@OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS,FOREIGN_KEY_CHECKS=0;SET@OLD_SQL_MODE=@@SQL_MODE,SQL_MODE='TRADITIONAL,ALLOW_INVALID_DATES';--架构mydbDROPSCHEMAIFEXISTS`mydb`;CREATESCHEMAIFNOTEXISTS`mydb`DEFAULTCHARACTER

mysql - 模式迁移 : one-to-many, PostgreSQL 中的多对多

背景在MySQL中,我需要用两个表对一对多建模,用三个表对多对多建模,如果我想保留标准化表格。我正在研究向PostgreSQL的迁移,令人惊讶的是,它允许向量甚至多维向量字段!问题PostgreSQL中一对多和多对多的规范映射是什么?一对多是否只是一个带有向量字段的表?是否有规范的多对多建模方式,还是取决于具体情况(比如我需要如何查询)?使用数组字段有什么注意事项吗? 最佳答案 在PostgreSQL中,您通常应该坚持关系建模,就像您目前在MySQL中使用的那样。PostgreSQL的数组很有用,但出于多种原因不应该成为您数据建模的

mysql - 在 MySQL 中使用 SELECT ... FOR UPDATE 死锁

假设我有一张table:CREATETABLEt(idINTEGERAUTOINCREMENTNOTNULL,descTEXTNOTNULL)我用1个元素填充表格:INSERTINTOTABLEtVALUES(1,'Hello')我在MySQL中运行两个事务。在t1我运行:STARTTRANSACTION;SELECT*FROMtWHEREid=1FORUPDATE;在t2我运行:STARTTRANSACTION;SELECT*FROMtWHEREid=1FORUPDATE;此时我希望t1在该行上持有一个e(X)独占锁,而t2等待它获得X锁(并且t2确实被阻止了,到目前为止一切顺利)。

php - 如何在 MYSQL UPDATE 中使用表别名

我必须使用PHP的mysql_query()函数更新mysql表。因此,我只需要在一条语句中发送以下UPDATE查询:SET@i=0;UPDATEmytableSETid=(@i:=@i+1);我已经阅读了一些示例,其中可以使用使用表别名的SELECT语句来完成此操作,例如:SELECT@rn:=@rn+1ASrank,t1.*FROM(SELECT*FROMmytable)t1,(SELECT@rn:=0)t2有什么方法可以将这些表别名与我需要使用的UPDATE语句一起使用吗?编辑:根据TopherHunt的回答,我想我可以使用以下方法创建mytable的副本:创建表mytable_

Mysql Bulk update performance improvements for (when.. case)

我有一个这样的查询,它应该在每个MySQL操作之后执行。由于数据增加,此查询现在正在减慢页面加载速度,我做了正确索引等所有操作,但查询仍然相对较慢。还有其他方法可以执行这些检查吗?$query="UPDATE{$tprefix}wh_profgSETstatus=CASEWHENbatchnoin(selectbatchnofrom{$tprefix}wh_profulldetailwhereremainingdays0andremainingdays>0)THEN'quarantine'WHENQC='approved'andQA='approved'andstatus!='empt

OS X El Capitan 上的 MySQL 5.7.9 : ERROR The server quit without updating the PID file

我有一台装有OSXYosemite的MacPro服务器,几天前我们升级到了OSXElCapitan。当我尝试重新安装MySQL时出现问题。我去MySQL官方页面下载了DMG包中的最新版本(5.7.9)并正常安装。安装并重启服务器后,MySQL服务器没有自动启动,手动启动时我得到:ERROR!TheserverquitwithoutupdatingPIDfile(/usr/local/mysql/data/macServer.pid)我一直在互联网上尝试很多解决方案:AfterMySQLinstallviaBrew,Igettheerror-Theserverquitwithoutupd

mysql - 在 Magento 库存数量更新期间使用 "FOR UPDATE"

问题的高级摘要:在下订单时获取有关锁定库存表的问题,导致订单因超时而失败。通过结帐流程,我看到正在执行以下查询:(我添加的评论)--LockstockandproducttablesSELECT`si`.*,`p`.`type_id`FROM`cataloginventory_stock_item`AS`si`INNERJOIN`catalog_product_entity`AS`p`ONp.entity_id=si.product_idWHERE(stock_id=1)AND(product_idIN(28775,28777))FORUPDATE--Performtheactuals