mysql - 在 Windows 10 上的 MySQL Server 5.7 中,更新无法远程运行

标签 mysql spring

我正在使用 spring 映射器将更新查询从我的 Web 应用程序发送到 sql 服务器。我能够发送 SELECT 语句并从我的数据库接收正确的响应。当我发送 UPDATE 语句时,我可以看到 MySQL Workbench 的客户端连接部分中弹出查询,但更新并未发生。当我复制并粘贴相同的查询(来自客户端连接中显示的查询信息)并从 MySQL 工作台中运行它时,更新成功。我对两者使用相同的根用户和密码。 Web 应用程序在本地主机上运行。我的root用户拥有所有权限。我已经尝试了在该网站上看到的几种方法,但似乎没有任何效果。有谁知道我下一步应该尝试什么?如果需要更多信息,请告诉我。 Here is the update showing up in workbench when I send it from the web app

Here is the mapper

更新:我也在控制台中收到此错误。
“由 com.mysql.cj.jdbc.exceptions.MySQLTransactionRollbackException 引起:超出锁定等待超时;尝试重新启动事务。”

所有提示都说只需终止有问题的连接,但即使我这样做,此错误仍然存​​在。发生某些事情导致锁定。有什么想法吗?

最佳答案

您尚未定义用于更新的parameterType。请定义参数类型如下:

这是一个示例:

<update id="updateUser" parameterType="User">
        UPDATE users SET
            firstName = #{firstName},
            lastName = #{lastName},
            email = #{email}
        WHERE ID = #{id}
    </update>

引用:https://www.tutorialspoint.com/mybatis/mybatis_mapper_xml.htmhttp://msdsalehi.blogspot.com/2012/05/how-t-send-multiple-parameters-to.html

关于mysql - 在 Windows 10 上的 MySQL Server 5.7 中,更新无法远程运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40559412/

相关文章:

php - 如果特定图像在数据库中不可用,如何显示默认图像?

mysql - 如何在 spring 上映射大写列名

mysql - 将 MySQL DB 复制到开发机器 - 坏主意?

java - 在当前项目和插件组中未找到前缀 'jetty' 的插件

java - 从父 POM 覆盖 spring-boot 版本

php - MySQL:使用 while 循环链接未显示在正确的列中

MySQL依赖子查询什么时候应该独立

java - Spring HATEOAS 模板链接无效下载方法

spring - 在 CRON JOBS 中执行方法

java - Spring Boot 无法从属性文件中读取值