草庐IT

transaction_payment

全部标签

mysql - InnoDB : Bulk insert using transaction OR combine multiple queries?

在InnoDB中执行批量INSERT时,我应该使用事务吗STARTTRANSACTION;INSERTINTOtbl_name(a,b,c)VALUES(1,2,3);INSERTINTOtbl_name(a,b,c)VALUES(4,5,6);INSERTINTOtbl_name(a,b,c)VALUES(7,8,9);COMMITTRANSACTION;或者合并多个查询?INSERTINTOtbl_name(a,b,c)VALUES(1,2,3),(4,5,6),(7,8,9);如果重要的话,我正在使用PHP和MySQL数据库在同一台机器上。 最佳答案

java - apache commons dbcp 连接池错误 : Timeout waiting for idle object in a Spring + Hibernate app using Spring Transactions

我已经阅读了各种Stackover流程​​问题和网络上关于类似问题的内容。但是,我找不到有用的提示来缩小我的问题范围。这是导致此错误的用例。2entitiesCampusandPrograms-->One-to-manyrelationfromCampustoProgramandOne-to-onefromProgramtoCampus.iamtryingtocreatemultipleprogramsassociatedwithcampuses.Eachinsertwillcreateanewprogramwithsamedetailsandattachittoadifferent(

php - NOW() for DATETIME InnoDB Transaction guaranteed?

在单个InnoDB事务的2+个查询中使用NOW()是否保证插入的日期时间值在数据库中是准确的?换句话说,即使您在使用它的单个事务中有超过20个查询,NOW()是否总是相同,还是会改变? 最佳答案 Apparentlyitisnotguaranteed跨事务但可以从语句更改为语句。有一个解决方法可以使用asshownhere:BEGIN;SELECT@now:=NOW();INSERT...VALUES(...,@now,...);INSERT...VALUES(...,@now,...);UPDATE...@now...;COMMI

Python3 - 'Lock wait timeout exceeded; try restarting transaction' 并且只处理数据库

使用Python我一直得到一个(1205,'Lockwaittimeoutexceeded;tryrestartingtransaction')每当我尝试插入特定表时出错。但是,当我尝试直接从MySQL控制台插入时,它工作得很好。展望SHOWFULLPROCESSLIST数据库显示没有其他事件查询。因为这是一个没有附加实时应用程序的开发数据库,​​所以我无法想象有任何问题。但是,它是在托管我们的生产数据库的服务器上提供的,因此我强烈希望尽可能不要进行重置。关于如何调试这个有什么建议吗?注意如果我使用SHOWFULLPROCESSLIST查看正在对数据库运行的查询,最终失败并显示上述消息

mysql - InnoDB 优化 - "use transactions when doing updates"- 为什么?

我正在阅读thispost在MySQL性能博客上。在应用程序调整下它说:Firstmakesureyou’reusingtransactionswhendoingupdates我目前只在同时有多个插入或更新的地方使用事务。即不止一张table。因此,我是否应该更改每个UPDATE以将其更改为事务?有什么区别:preparesqlbindparamscommit和:begintransactionpreparesqlbindparamsexecutestatementcommittransaction就数据库级别发生的事情而言,这使得一个比另一个更快? 最佳答

Mysqldump --single-transaction 选项

有人能解释一下mysqldump--single-transaction实际上是如何用于事务表的吗,比如InnoDB?我看过官方documentation但仍然没有胶水。它是否像--lock-tables那样执行每个表锁定而不是全局锁定?此外,mysqldump运行--opt作为默认选项,其中包括--lock-tables,但它们与--single-transaction如上面的文档链接中所述。在单个mysqldump命令中使用--single-transaction时,我应该使用--skip-opt吗?我需要转储大小约为700Gb的InnoDB表,我正在寻找实现此目的的正确命令。目前

php - PDO/PHP/MySQL 中的性能 : transaction versus direct execution

我循环遍历多个值(例如1到100)并在循环内执行准备好的语句。与在循环内直接执行相比,使用事务(在循环结束后提交)是否有优势?这些值彼此不依赖,因此从这个角度来看不需要交易。 最佳答案 如果您的查询是INSERT,页面7.2.19.SpeedofINSERTStatementsMySQL手册的一部分提供了两个有趣的信息,具体取决于您是否使用事务引擎:使用非事务引擎时:TospeedupINSERToperationsthatareperformedwithmultiplestatementsfornontransactionalta

为什么要使用 transaction data?

可能你也注意到了,在跟智能合约交互(例如发送token)时,你的事务会自动包含inputdata(“输入数据”)。在MyCrypto钱包界面,这些数据有个简单的标签:“Data(数据)”——它是做什么的呢?这篇文章就是从技术上解释事务输入数据是怎么一回事,它实质是什么,又是怎么工作的。 -MyCrypto钱包的高级事务设定-什么是InputData?我们先来看看这笔token转账交易。某个人发送了0ETH到 0xd26114cd6ee289accf82350c8d8487fedb8a0c07(OmiseGo合约地址),而且Etherscan网站呈现了这是一笔意图发送0.19OMGtoken到这

PHP & MySQL : Simple code to implement Transaction - Commit & Rollback

我的平台:PHP和MySQL我的情况:我正在尝试在我的代码中实现交易。我试图遵循示例,但这并没有多大帮助。我正在运行3个查询,我想以这种方式编写一个事务,以便如果任何一个查询失败,整个事务应该回滚。我真的很感激一个简单、高效和非面向对象的PHP代码来实现这个目标。提前谢谢你。我的PHP代码://db_rescallsacustomfunctionthatperformsamysql_queryonthequery$res1=db_res("SELECTc1,c2FROMt1WHEREc5=3");$res2=db_res("UPDATEt2SETc1=5WHEREc2=10");$re

MySQL 事务 : One Large Transaction against Multiple Small Transactions

大交易的设计..STARTTRANSACTION;/*INERTforlogindetail*//*INSERTforpersonalinformation*//*INSERTforuser'stransactionaccount*/COMMIT;和小交易的设计..STARTTRANSACTION;/*INSERTforlogindetail*/COMMIT;STARTTRANSACTION;/*INSERTforpersonalinformation*/COMMIT;STARTTRANSACTION;/*INSERTforuser'stransactionaccount*/COMMI