• MySQL select之后再update


    1、先查询页面 而后再根据查询的结果来更改数据库,可以使用SELECT …… FOR UPDATE 来实现,具体的代码如下

    SELECT *
    FROM chat  //查询的表
    WHERE senderid = 2 AND receiverid = 14 //查询的条件
    FOR UPDATE;  //分号不能少,否则在MySQL中运行会报错
    UPDATE chat SET ready = 1  //更改的内容
    WHERE senderid = 2 AND receiverid = 14 //update的条件

    2、在MySQL中运行没有报错,但是在mybatis中运行却报错,并显示错误:Error querying database. Cause: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException

    按照常规流程先看看是否有不存在的字段存在,或者是实体少写了什么,然后再看看SQL语句中是否与mybatis中的一些名字发生了冲突,但是这些均没有问题,而且在MySQL中运行正确就代表SQL语句也没错,后面看见那个分号总是有些碍眼,因为在mybatis中从来没有看见过符号,后面专门查询了一下果然是分号导致的错误,mybatis中不允许有符号的存在,后面经过查询才发现在配置文件中(我这里是application.properties文件)数据库链接加上添加allowMultiQueries=true,也即是:

    原来是:

    jdbc.url = jdbc:mysql://122.152.251.93:3306/zhyy?useUnicode=true&characterEncoding=utf8&useSSL=false

    现在在后面加上allowMultiQueries=true:

    jdbc.url = jdbc:mysql://122.152.251.93:3306/zhyy?useUnicode=true&characterEncoding=utf8&useSSL=false&allowMultiQueries=true

     现在运行,果然就没错了,这个问题比较少见,所以得记下来

  • 相关阅读:
    Leetcode: Palindrome Permutation
    Leetcode: Ugly Number
    Leetcode: Ugly Number II
    Leetcode: Single Number III
    Leetcode: 3Sum Smaller
    Leetcode: Factor Combinations
    Leetcode: Different Ways to Add Parentheses
    Leetcode: Add Digits
    GigE IP地址配置
    Ubuntu 关闭触摸板
  • 原文地址:https://www.cnblogs.com/attentle/p/11177128.html
Copyright © 2020-2023  润新知