草庐IT

update-rc

全部标签

sql - 使用 SELECT 结果集通过 MySQL 存储过程运行 UPDATE 查询

我想了解MySQL存储过程,我想检查用户登录凭据是否有效,如果有效,则更新用户在线状态:--DROPPROCEDUREIFEXISTScheckUser;DELIMITER//CREATEPROCEDUREcheckUser(INin_emailVARCHAR(80),INin_passwordVARCHAR(50))BEGINSELECTid,nameFROMusersWHEREemail=in_emailANDpassword=in_passwordLIMIT1;--Ifresultis1,UPDATEusersSETonline=1WHEREid="result_id";END/

mysql - UPDATE 语句的 where 子句中的子查询

我有ATM卡数据库,其中有字段account_no、card_no、is_blocked、is_activated、issue_date字段帐号和卡号不是唯一的,因为旧卡将过期并标记为is_block=Y而另一条具有相同卡号的记录,帐号将被插入到带有is_blocked=N的新行中。现在我需要在issue_date的帮助下更新is_blocked/is_activated即UPDATEcard_infosetis_blocked='Y'wherecard_no='6396163270002509'ANDopening_date=(SELECTMAX(opening_date)FROMc

mysql - 错误 : HHH000299: Could not complete schema update java. lang.NullPointerException

我在以下环境中有一个Web应用程序。JPA2.0Spring3.2.2MySQL5.6.11hibernate4.2.0CR1ApacheTomcat7.0.35我目前在application-context.xml文件中的配置如下。persistence.xml包含以下xml。org.eclipse.persistence.jpa.PersistenceProvider-->org.hibernate.ejb.HibernatePersistencemodel.Testfalse-->下面是目前唯一的实体类。我已尝试对该实体执行插入操作,但已成功。packagemodel;@Enti

mysql - 为什么这个 update-with-join mysql 查询这么慢?

我有一个应用程序需要更新层次结构中的节点,从ID已知的特定节点向上。我使用以下MySQL语句来执行此操作:updatenodeasAjoinnodeasBonA.lft=B.rgtsetA.count=A.count+1whereB.id=?该表在id上有一个主键,在lft和rgt上有索引。该语句有效,但我发现它存在性能问题。查看相应select语句的EXPLAIN结果,发现“B”表检查的行数非常多(可能是整张表)。我可以轻松地将查询分成两个单独的查询:selectlft,rgtfromnodewhereid=?LFT=result.lftRGT=result.rgtupdatenod

mysql - 自动将 INSERT 语句转换为 UPDATE 的简单方法?

我想使用mysqldump的输出来更新实时数据库中的条目。我不想先删除条目,简单的更新语句就可以了。有没有一种简单的方法可以将包含INSERT语句的mysqldump的输出转换为相应的UPDATE语句?这似乎是一个基本功能,所以我敢肯定有人创建了一个工具或想出了一个快速完成它的方法,这样人们就不必一直重新发明轮子,每个人都编写自己的脚本这个。编辑:我正在寻找一种通用解决方案,而不是我必须手动枚举实际表列的解决方案。这是一个一般性问题,所以我认为应该有一个独立于表的解决方案。 最佳答案 您可以将mysqldump数据恢复到新的临时数据

mysql - 根据行在 MySQL 中是否存在执行 UPDATE 或 INSERT

在MySQL中,我试图找到一种有效的方法来在表中已存在行时执行更新,或者在行不存在时执行插入。到目前为止,我发现了两种可能的方法:最明显的一个:打开一个事务,SELECT查找该行是否存在,如果不存在则INSERT,如果存在则UPDATE,提交事务首先将INSERTIGNORE插入表中(因此如果该行已存在则不会引发错误),然后是UPDATE第二种方法避免了交易。您认为哪个更有效,有没有更好的方法(例如使用触发器)? 最佳答案 INSERT...ONDUPLICATEKEYUPDATE 关于

php - 如何在 Laravel 4 中使用 UPDATE 或 INSERT?

我正在Laravel4中构建一个应用程序,我需要运行多个查询作为UPDATE或INSERT查询,以避免在重复插入时违反PK。我一直无法找到任何方法来使用Laravel中的查询构建器来执行此操作。我可以修改数据库类或类似的东西吗?还是我只需要编写纯SQL语句? 最佳答案 现在我们可以使用User::updateOrCreate() 关于php-如何在Laravel4中使用UPDATE或INSERT?,我们在StackOverflow上找到一个类似的问题: htt

python - mycursor.executemany UPDATE 未按预期工作

问题:我有一个用于抓取和网站的python脚本,它获取2个变量并将它们存储在2个列表中。然后我使用executemany来更新MySQL数据库,使用一个变量来匹配预先存在的行以将另一个变量插入。代码:Python脚本importmysql.connectorfrombs4importBeautifulSoupassoupfromseleniumimportwebdriverimporttime,remydb=mysql.connector.connect(host="host",user="user",passwd="passwd",database="database")mycurs

如果我使用 'after update' 但不使用 'after insert',MYSQL 触发器是否有效?

我编写了一个触发器,在对表a执行操作后向表b中插入一行。出于某种原因,如果我在“插入后”添加此触发器然后插入一行,它没有任何效果。但是,如果我将触发器添加为“更新后”并更新行,它确实有效。这是触发代码。当我将“AFTERUPDATE”替换为“AFTERINSERT”并进行插入时,插入新行时没有任何反应。创建触发器时我没有收到任何错误,并且我没有尝试更新设置触发器的同一个表。任何帮助表示赞赏!谢谢,仁droptriggerifexistsinsertUndecided;DELIMITER//CREATETRIGGERinsertUndecidedAFTERUPDATEONjiraissu

MySQL/InnoDB偶尔有些更新运行很慢,处于 'Updating'状态

我们的数据库更新性能偶尔会大幅下降。例如,表FooTable我们有大约40列与varcharPK此外还有10个索引。以下查询用时44秒,而在其他时候它几乎立即运行。在减速期间,服务器上的平均负载非常低(5分钟平均负载为1.5),并且根据vmstat的IO也相当合理。这里有一个例子:mysql>updateFooTablesetBarColumn=1349981286086wherevarcharPK='e4348411-0fbb-460a-80f7-f1de304a9f7c'QueryOK,1rowaffected(44.94sec)Rowsmatched:1Changed:1Warn