Java 如何将sql查询中的计数值存储到变量中,以便根据表中的客户数创建customerid?
我想将接收到的计数值存储到一个变量count中,然后可以将该变量附加到一个字符串中,以准备客户id,但它给了我游标无效错误。请看下面,帮我解决一下。提前感谢。:) 输出:Java 如何将sql查询中的计数值存储到变量中,以便根据表中的客户数创建customerid?,java,sql,variables,count,Java,Sql,Variables,Count,我想将接收到的计数值存储到一个变量count中,然后可以将该变量附加到一个字符串中,以准备客户id,但它给了我游标无效错误。请看下面,帮我解决一下。提前感谢。:) 输出: Connection Successfull sun.jdbc.odbc.JdbcOdbcConnection@39b27b java.sql.SQLException: [Microsoft][ODBC Driver Manager] Invalid cursor state at sun.jdbc.odbc.Jdb
Connection Successfull
sun.jdbc.odbc.JdbcOdbcConnection@39b27b
java.sql.SQLException: [Microsoft][ODBC Driver Manager] Invalid cursor state
at sun.jdbc.odbc.JdbcOdbc.createSQLException(Unknown Source)
at sun.jdbc.odbc.JdbcOdbc.standardError(Unknown Source)
at sun.jdbc.odbc.JdbcOdbc.SQLGetDataInteger(Unknown Source)
at sun.jdbc.odbc.JdbcOdbcResultSet.getDataInteger(Unknown Source)
at sun.jdbc.odbc.JdbcOdbcResultSet.getInt(Unknown Source)
at components.genrateid.generateid(genrateid.java:29)
at components.genrateid.main(genrateid.java:43)
插入这一行
if(rs.next())
以前
count = rs.getInt(1);
你会很好的。但是,正如DEMS所说的,考虑使用标识列(或者因为您正在使用Oracle -序列)为什么不使用身份栏呢?也不应该使用JDBC/ODBC桥。车又慢又多。Oracle有一个非常好的纯(Type4)JDBC驱动程序。@Dems:Oracle没有“IDENTITY”列。他/她需要使用一个序列。@a_horse_,没有名字-我遗漏了什么,你怎么知道这是给Oracle的?@Dems:是JDBC和用户名/密码。“XE”通常用于OracleExpress,“scott/tiger”是Oracle的默认帐户之一。这两者一起是Oracle安装的有力指标。
count = rs.getInt(1);