下面的代码在derby中创建了一个sample的数据库,并创建了一个表,做了些测试。

package ForTest;
import java.awt.Image;
import java.awt.image.RenderedImage;
import java.io.OutputStream;
import java.sql.Blob;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
import java.sql.Savepoint;
import java.sql.Statement;

import javax.imageio.ImageIO;

public class ConnectDBTest {

 public static void main(String[] args) {
  // TODO Auto-generated method stub
   String driver = "org.apache.derby.jdbc.ClientDriver";
         String url = "jdbc:derby://localhost:1527/sample;create=true";
         String sql = "create table students(id int,name varchar(20),photo blob)";
         String sql2 = "insert into Greetings values(1,'bai')";
         String sql3 = "select * from Greetings";
         String sql4= "update Greetings set id=? where id=?";
         Connection conn = null;
         Statement stmt = null;
         ResultSet rs = null;
         PreparedStatement ps = null;
         try{
//             ps = conn.prepareStatement(sql4);
//             ps.setInt(1, 222);
//             ps.setInt(2, 1);
             Class.forName(driver).newInstance();
             conn = DriverManager.getConnection(url);
             conn.setAutoCommit(false);
             stmt=conn.createStatement();
             ps.execute();
             stmt.addBatch(sql3);
             stmt.addBatch(sql4);
             Savepoint sp =conn.setSavepoint();
             stmt.executeUpdate(sql2);
             stmt.executeQuery(sql3);
             conn.rollback();
             rs=stmt.getResultSet();
             ResultSetMetaData metaData=rs.getMetaData();
             int columncount = metaData.getColumnCount();
             for(int i=1;i<=columncount;i++){
              System.out.println(metaData.getColumnLabel(i));
              }
             System.out.println("***");
             while(rs.next()){
              for(int i=1;i<=columncount;i++){
               System.out.println(rs.getString(i));
              }
             }
 }catch(Exception e){
  e.printStackTrace();
 }
}
}