无法检索第一列

Unable to retrieve first column

我正在尝试获取第一列(列 ID 并获取关联的名字和姓氏)。我尝试了多种方法,但无法正常工作。

它 returns 我没有找到错误 CUSTOMERID。

public 字符串 getCustomerUsingId(int id) {

String firstName = null;
String lastName = null;

Statement stmt = null;

String getCustomerQuery = "SELECT FIRSTNAME,LASTNAME FROM CUSTOMERS WHERE CUSTOMERID ='"
        + id + "'";

try {
    conn = DriverManager.getConnection(DB_URL, USER, PASS);
    stmt = conn.createStatement();
    stmt.execute(getCustomerQuery);
    ResultSet rs = stmt.getResultSet();
        if(rs.next()){
            id = rs.getInt("CUSTOMERID");
            System.out.println("id is:" + id);
            if(id == -1){
                System.out.println("value is true");
                firstName = rs.getString(2);
                lastName =  rs.getString(3);
                System.out.println("First Name :" + firstName);
                System.out.println("First Name :" + lastName);
            }
        }
    }

我正在使用 H2 作为数据库,这就是它的样子

CUSTOMERID      FIRSTNAME   LASTNAME  
1                P              S
2                K              S

这就是我创建 table

的方式
String customerSqlStatement = "CREATE TABLE CUSTOMERS " + "(customerId INTEGER NOT NULL IDENTITY(1,1) PRIMARY KEY, " + " FirstName VARCHAR(255), " + " LastName VARCHAR(255))";

您还需要在 select 查询中明确包含列名。

因此,变量 getCustomerQuery 应该类似于

String getCustomerQuery = "SELECT CUSTOMERID,FIRSTNAME,LASTNAME FROM CUSTOMERS WHERE CUSTOMERID ='"
    + id + "'";