`

由update数据表引起的com.mysql.jdbc.exceptions.MySQLSyntaxErrorException: 问题

阅读更多
这个问题是有单引号'引起的。
刚开始的语句为:
String update = "update html_texts set news_fudan = '" + s + "' where id = '" + j + "'";
st.execute(update);


s为中文词性标注后的字符串,是中含有单引号,程序运行后出现了com.mysql.jdbc.exceptions.MySQLSyntaxErrorException: You have error in you SQL syntax;check the manual that corresponds to your MYSQL server version for the right syntax to use near.....

后来在网上查后说是字符串s中单引号引起的问题,最好使用PreparedStatement。修改后的代码如下:
PreparedStatement pst = (PreparedStatement) conn.prepareStatement("update html_texts set news_fudan = ? where id = ?"); 
pst.setString(1, s);
pst.setInt(2, j);   
pst.executeUpdate();


PreparedStatement 实例包含已编译的 SQL 语句。这就是使语句“准备好”。包含于 PreparedStatement 对象中的 SQL 语句可具有一个或多个 IN 参数。IN参数的值在 SQL 语句创建时未被指定。相反的,该语句为每个 IN 参数保留一个问号(“?”)作为占位符。每个问号的值必须在该语句执行之前,通过适当的setXXX 方法来提供。
分享到:
评论

相关推荐

    Cause: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: ….. this is incompatible with sq

    1、写在开头 标题之前我想说一下Linux的mysql真的实在是太坑了。太坑了。总是会出现这样那样的你想不到的问题。崩溃了。首先来罗列一下我遇到过的...Cause:com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorExcepti

    解决Cause com.mysql.jdbc.exceptions.jdbc4.CommunicationsException

    Cause com.mysql.jdbc.exceptions.jdbc4.CommunicationsException The last packet successfully received from the server was 47,795,922 milliseconds ago. The last packet sent successfully to the server was...

    mysql 异常com.mysql.jdbc.CommunicationsException

    本次异常的具体描述为:“Communications link failure due to underlying exception: **BEGINNESTED EXCEPTION** java.io.EOFException STACK TRACE: java.io.EOFException at com.mysql.jdbc.MysqlIO.readFully...

    com.mysql.jdbc.PacketTooBigException: Packet for query is too large (11087 > 102

    总之,`com.mysql.jdbc.PacketTooBigException` 是一个提示我们注意数据库操作规模的问题,需要通过优化SQL、调整服务器配置、客户端设置或者改变数据存储策略来解决。同时,这也是一个提醒,提醒我们在设计和使用...

    bitronix 连接 MySQL 出现MySQLSyntaxErrorException 的解决方法

    Caused by: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Access denied for user ''@'localhost' to database 'hibernate' at sun.reflect.NativeConstructorAccessorImpl.new

    mysql数据库在springboot项目中启动报错问题.docx

    在给定的信息中,我们注意到一个具体的错误信息:“com.baomidou.mybatisplus.core.exceptions.MybatisPlusException: Error:GlobalConfigUtils setMetaData Fail !”。这个错误提示表明在使用 MyBatis Plus 时出现...

    c-jdbc 详细配置方案

    C-JDBC,全称Cluster JDBC,是一款用于数据库集群的中间件,它允许应用程序同时访问和操作多个数据库,实现数据的同步交换。以下是对C-JDBC的详细配置方案及其相关知识点的解析: 1. **下载与安装**: - 从官方...

    MySQL数据库连接异常汇总(值得收藏)

    在Centos上部署项目发现一个奇怪的问题,数据库连接一直抛异常。于是花了两个小时搜了各种数据库连接异常导致的原因,最终问题得以解决。同时,把解决过程中搜集到的异常信息汇总一下,当大家遇到...com.mysql.jdbc.exc

    mysql-connector-java-5.1.12.rar 源代码

    MySQL Connector/J 5.1.12 是 MySQL 官方提供的用于 Java 应用程序...3. com.mysql.jdbc.exceptions 包:包含所有由 MySQL Connector/J 抛出的异常类,如 `com.mysql.jdbc.exceptions.MySQLSyntaxErrorException` 和 `...

    mysqljdbc src

    9. **元数据获取**:`com.mysql.jdbc.DatabaseMetaData`类提供了获取数据库元数据的方法,如数据库版本、表信息、索引信息等。 10. **类型映射**:`com.mysql.jdbc.Types`枚举类定义了Java类型到MySQL类型的映射,...

    mysql8驱动源码.zip

    10. **元数据获取**:`com.mysql.cj.jdbc.DatabaseMetaData` 类提供了获取数据库元数据的方法,如表信息、列信息、索引信息等,帮助开发者了解数据库结构。 源码分析可以帮助开发者深入理解 MySQL 驱动的工作原理,...

    Dbvisualizer安装及连接mysql oracle sqlServer配置

    DbVisualizer是一款强大的...无论你是处理MySQL的数据备份,还是Oracle的复杂查询,或是SQL Server的表结构设计,DbVisualizer都能提供一个统一且高效的平台。因此,掌握其安装与配置对于日常的数据库工作至关重要。

    解决mysql导入新数据库大小写问题(Table ‘zup.Domain_System’ doesn’t exist)

    问题 Table ‘zup.Domain_System’ doesn’t exist ...### Cause: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Table 'zup.Domain_System' doesn't exist ; bad SQL grammar []; nested

    MyEclipse8.x 汉化

    值得注意的是,汉化虽然方便了中文用户的使用,但有时也可能导致一些非预期的问题,比如功能异常、界面显示不全等。因此,保持MyEclipse的更新和使用官方版本的语言包是最佳选择。同时,学习和熟悉英文版的MyEclipse...

    mysql_jdbc连接数据库-错误提示.pdf

    Exception in thread "main" com.mysql.jdbc.exceptions.MySQLSyntaxErrorException: Unknown database 'hrtrain' ``` **解决方法**: - 确认数据库名称是否正确。 - 检查MySQL服务状态,确保其正在运行。 #### 五...

    mysql的jar

    5. **异常处理**:当数据库操作遇到问题时,会抛出特定的异常,如`com.mysql.jdbc.exceptions.MySQLSyntaxErrorException`和`com.mysql.jdbc.exceptions.MySQLIntegrityConstraintViolationException`等。...

    linux 后台日志 mysql 错误异常的解释(推荐)

    1、Caused by: com.MySQL.jdbc.exceptions.jdbc4.CommunicationsException: The last packet successfully received from the server was 56,201,339 milliseconds ago. The last packet sent successfully to the...

    mysql-connector-java-6.0.6源码

    `com.mysql.jdbc.exceptions`包包含了所有可能抛出的MySQL特定异常,如`MySQLSyntaxErrorException`、`MySQLIntegrityConstraintViolationException`等,这些异常在遇到错误时被抛出,帮助开发者识别和解决问题。...

    最美POETIZE个人博客系统源码

    最美POETIZE个人博客系统源码 这是一个 SpringBoot + Vue2 + Vue3 的产物,支持移动端自适应,配有完备的前台和后台管理功能。 网站分两个模块: 博客系统:具有文章,表白墙,图片墙,收藏夹,乐曲,视频播放,...

    mysql-connector-java-5.1.33-bin.src源码

    6. **异常处理**: 源码中包含了大量的异常类,如`com.mysql.jdbc.exceptions.MySQLSyntaxErrorException`,这些异常类对应于MySQL数据库的各种错误情况,帮助开发者诊断和解决问题。 7. **性能优化**: MySQL ...

Global site tag (gtag.js) - Google Analytics