JDBC Driver for Couchbase

Build 20.0.7654

Executing Statements

After Connecting from Code, you can execute SQL statements with the Statement class. See Using Prepared Statements to execute parameterized statements.

Select

To execute SQL statements that return data, use the Statement class' generic execute method or the executeQuery method. To return the results of a query, call the getResultSet method of the Statement.

The following example calls the execute method and iterates over the results returned:

Statement stat = conn.createStatement();
boolean ret = stat.execute("SELECT Name, TotalDue FROM Customer");
if (ret) {
  ResultSet rs=stat.getResultSet();
  while(rs.next()) {
    for(int i=1;i<=rs.getMetaData().getColumnCount();i++) {
      System.out.println(rs.getMetaData().getColumnName(i) +"="+rs.getString(i));
    }
  }
}

Insert

To execute an insert, use the generic execute method or the executeUpdate method of the Statement class.

To obtain the generated keys for the new records, specify Statement.RETURN_GENERATED_KEYS in the method call. After executing the statement, call Statement.getGeneratedKeys. For example:

Statement stat = conn.createStatement();
int count = stat.executeUpdate("INSERT INTO Customer (Name, TotalDue) VALUES ('Name','TotalDue')",Statement.RETURN_GENERATED_KEYS );
ResultSet rs = stat.getGeneratedKeys();
while(rs.next()) {
  for(int i=1;i<=rs.getMetaData().getColumnCount();i++) {
    System.out.println(rs.getMetaData().getColumnName(i) +"="+rs.getString(i));
  }
}

Upsert

Executing an upsert is the same as an insert: you can use the generic execute method or executeUpdate.

To obtain the generated keys for the new records, specify Statement.RETURN_GENERATED_KEYS in the method call. After executing the statement, call Statement.getGeneratedKeys. For example:

Statement stat = conn.createStatement();
int count = stat.executeUpdate("UPSERT INTO Customer (Name, TotalDue) VALUES ('Name','TotalDue')",Statement.RETURN_GENERATED_KEYS );
ResultSet rs = stat.getGeneratedKeys();
while(rs.next()) {
  for(int i=1;i<=rs.getMetaData().getColumnCount();i++) {
    System.out.println(rs.getMetaData().getColumnName(i) +"="+rs.getString(i));
  }
}

Update

To execute an update, use the generic execute method or the executeUpdate method of the Statement class. You can call the getUpdateCount method to obtain the count of affected rows. Or, call the executeUpdate method; this method returns the row count. For example:

Statement stat = conn.createStatement();
stat.execute("UPDATE Customer SET Name = 'XXX' , TotalDue = 'YYY' WHERE Id = '1'");
int count = stat.getUpdateCount();

Delete

To execute a delete, use the generic execute method or the executeUpdate method of the Statement class. You can call the getUpdateCount method to obtain the count of affected rows. Or, call the executeUpdate method; this method returns the row count. For example:

Statement stat = conn.createStatement();
stat.execute("DELETE FROM Customer WHERE Id = '1'");
int count = stat.getUpdateCount();

Copyright (c) 2020 CData Software, Inc. - All rights reserved.
Build 20.0.7654