如何将Java字符串转换为MySQL数据类型?

时间:2015-02-24 21:33:21

标签: java mysql jdbc

我正在尝试将一些字符串值从Java转换为MySQL数据类型,我尝试使用数据类型varchar,但我传递的值是网页的HTML代码,而且它们太大了数据类型。如果我有一个字符串,那是一个HTML代码网页,我想将它存储在MySQL数据库中,我可以使用哪种数据类型?我尝试将MySQL中我的列的数据类型更改为“TEXT”和其他数据类型,但我得到此错误,我认为这是一个问题,因为我试图插入一个无法插入到这些数据类型的字符串值,任何帮助都会不胜感激:

Query error:com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException

1 个答案:

答案 0 :(得分:0)

这里有两个问题要解决。

  1. 对于数据类型,您可以根据数据大小使用TEXT,BLOB或此链接的任何变体。参考 MYSQL Documentation on TEXT and BLOB data types

  2. 如果您尝试将HTML内容保存到数据库,那么由于字符串中的引号'和双引号",您生成的SQL很可能会获得不正确的值。

  3. 这样可以解决问题。 您必须使用参数来传递数据。

    String htmlValue = "<html> <....... ";
    
    String sql = "insert into my_table (html_content) values( ? )";
    PreparedStatement stmt = connection.prepareStatement( sql );
    stmt.setString( 1, htmlValue );
    stmt.executeUpdate();