gpt4 book ai didi

java - 如何在 JDBC 应用程序中使用动态对象

转载 作者:行者123 更新时间:2023-11-29 08:38:27 25 4
gpt4 key购买 nike

查询在 MySQL 数据库中运行良好。我的 JDBC 应用程序中有此查询。我遇到了一些编译时错误。
我的输入对象是 s1s2,其中 s1 包含 1 月s2 包含 2013。两种数据类型都是 VARCHAR。我在引号中遇到问题。请提出一些更正建议。

String QueryString = "SELECT reading,totalcost,paiddate,receiptnumber<br/>
FROM userseven WHERE (readingmonth = '"+s1+"' AND readingyear='"+s2+"'");

最佳答案

为此目的,您最好使用PreparedStatement。所以你的查询将如下所示:

 String QueryString = "SELECT reading,totalcost,paiddate,receiptnumber FROM userseven WHERE
readingmonth = ? AND readingyear= ?;

然后从 connection 对象创建 PreparedStatement,如下所示:

PreparedStatement stmt = conn.prepareStatement(QueryString);

然后为该语句设置参数,如下所示:

stmt.setString(1, s1);
stmt.setString(2, s2);

此类修改将使您免于潜在的 SQL 注入(inject),并简化构建复杂查询的过程

关于java - 如何在 JDBC 应用程序中使用动态对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14543795/

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