gpt4 book ai didi

java - 将 PDF 文件更新为 mysql BLOB 您的 SQL 语法有误;

转载 作者:行者123 更新时间:2023-11-30 23:21:52 26 4
gpt4 key购买 nike

我将文件 PDF 上传到 MySQL 数据库,但更新方法一直在工作,它一直给我一个错误,我试图修复它但无法工作这就是方法,

public void updateProjet(String location,String img) throws Exception
{
// Créer une connexion JDBC Oracle sur la Base de Données
.. ici connection ..

String cad = "update projet set NomProjet='"+this.getnom_projet()+
"', DateDeb='"+this.getdd()+ "', DateFin='"+this.getdf()+
"', iduser='"+this.getid()+ "',IdProjet='"+this.getnprojet()+
"',?,? where idpro='"+this.getidpro()+"'";
PreparedStatement pStmt = conn.prepareStatement(cad);
pStmt.setString(1, img);

File fichier = new File(location);
FileInputStream io = new FileInputStream(fichier);
pStmt.setBinaryStream(2, (InputStream)io,(int)fichier.length());

pStmt.executeUpdate();
}

错误是:

com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''Exercices2_corrige_2.pdf',_binary'%PDF-1.4
%Çì�¢
5 0 obj
<</Length 6 0 R/Filter' at line 1

请帮忙,非常感谢,

最佳答案

你的语句的参数化值好像没有设置列名。你将不得不使用类似的东西:columnName=?你在哪里单独使用 ?

如评论中所述,为所有参数请求使用参数化参数以防止 SQL 注入(inject)漏洞是一种更好的做法。

关于java - 将 PDF 文件更新为 mysql BLOB 您的 SQL 语法有误;,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15146546/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com