gpt4 book ai didi

java - 如何将字符串变量添加到 jdbc firebird 连接上的 SQL 查询

转载 作者:太空宇宙 更新时间:2023-11-04 12:00:55 24 4
gpt4 key购买 nike

我正在尝试从 Java 应用程序查询 Firebird 数据库。该查询包含 2 个整型变量和 1 个字符串。查询如下所示:

Statement statement = conn.createStatement();

ResultSet rs = statement.executeQuery("select * from table where
column1 < " + intvariable1 + " and (
column2 > " + intvariable2 +" or column2 = 0) and
column3 = '" + stringvariable + "' ";

Rs.next();
syso(rs.getInt(1));

看来ResultSet是空的,但是当我使用硬编码字符串值而不是变量时,我得到了预期的结果。

我也尝试过 preparedstatements具有相同的结果 - 它仅在没有字符串变量的情况下工作。

知道我做错了什么吗?

编辑:问题已解决! String 变量来自 BLOB 字段,其中包含一些空值。调用修剪函数删除了那些。

最佳答案

我注意到在“column3”行中,在开盘报价之后和收盘报价之前有一个空格。除非您故意尝试匹配以空格开头和结尾的字符串,否则您将找不到结果。如果没有,请剪掉空格:

column3 = '" + stringvariable + "' ";

关于java - 如何将字符串变量添加到 jdbc firebird 连接上的 SQL 查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40919504/

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