草庐IT

pledge_transactions

全部标签

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

php - 如何将准备好的语句与 Transactions with PHP 结合使用?

我的目标是同时使用事务和准备好的语句,以实现数据的完整性和防止SQL注入(inject)。我有这个:try{$cnx=newPDO($dsn,$dbuser,$dbpass);$cnx->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_EXCEPTION);$cnx->beginTransaction();$cnx->query("SELECT*FROMusersWHEREusername=$escaped_input");$cnx->query("SELECT*FROMothertableWHEREsome_column=$escaped_in

mysql - 存储 'debits'和 'credits'维护一个 'transactions'表

哪个是事务表的更好架构:customer_idtype(enum,'Debit'or'Credit')amount(decimal,unsigned)或customer_idamount(decimal,signed...negativenumbersaredebits,positivenumbersarecredits)第二个解决方案似乎更简单,但我担心我遗漏了一些潜在的陷阱。 最佳答案 第二个更简单,也更高效。将来查询变得更加容易,特别是余额查询。 关于mysql-存储'debits

php - Laravel DB::transaction 不回滚异常

我在使用Laravel4.2和DB::transaction时遇到了这个小问题。我遇到了交易未回滚的问题,所以我尝试了最简单的代码片段并将其放入routes.php以进行测试:路由.php:DB::transaction(function(){$user=App::make("User");$user->save();thrownewException("Shouldnotcreateusers");});.........Someothercodehere简单地说,我尝试在事务闭包中创建用户,并在创建用户后抛出异常以强制回滚事务。我的问题是即使抛出异常,事务也不会回滚。每次刷新应用程

java - 组织.hibernate.HibernateException : save is not valid without active transaction

我正在创建JSF应用程序并在其中使用一些hibernate功能。我想做的就是将实体保存到数据库中,但我一直收到此异常:org.hibernate.HibernateException:saveisnotvalidwithoutactivetransaction起初我得到这个异常:org.hibernate.HibernateException:NoCurrentSessionContextconfigured!然后我发现我需要将它添加到我的hibernate配置中:thread这解决了这个问题,但现在出现了上面的问题。我像这样将实体保存到数据库中:publicvoidcreate(Te