当前位置:Gxlcms > 数据库问题 > JDBC基础

JDBC基础

时间:2021-07-01 10:21:17 帮助过:4人阅读

 1     //(1)通过反射加载数据库驱动
 2     Class.forName("com.mysql.jdbc.Driver");
 3     
 4     //(2)通过DriverManager获取数据库连接
 5     String url="jdbc:mysql://127.0.0.1:3306/mydb";
 6     String user="root";
 7     String password ="w5566";
 8     Connection conn = DriverManager.getConnection(url, user, password);
 9     
10     //(3)通过Connection创建普通Statement对象
11     Statement statement = conn.createStatement();
12     
13     //(4)使用Statement执行SQL语句,返回ResultSet对象
14     String sql = "select * from test";
15     ResultSet rs = statement.executeQuery(sql);
16     
17     //(5)操作ResultSet结果集
18     while(rs.next()){
19         System.out.println(rs.getString(1)+"\t"+rs.getString(2)+"\t"+rs.getString(3)+"\t"+rs.getString(4)+"\t");
20     }

 

(1)(2)不同数据库驱动类不同,Url也不同

①MySql

com.mysql.jdbc.Driver

jdbc:mysql://hostname:port/databasename

②Oracle

oracle.jdbc.driver.OracleDriver

jdbc:oracle:thin:@hostname:port:databasename

 

(3)创建Statement的方法

①基本:Connection.createStatement();

②预编译:Conection.prepareStatement(sql);

 1   String sql = "insert into test(UID,username,password,email,phone) value(?,?,?,?,?)";
 2   PreparedStatement pStatement = conn.prepareStatement(sql);
 3   for (int i = 0; i < 1000; i++) {
 4       pStatement.setString(1, UUID.randomUUID().toString());
 5       pStatement.setString(2, "user" + i);
 6     pStatement.setString(3, "pass" + i);
 7     pStatement.setString(4, "email" + i);
 8     pStatement.setString(5, "phone" + i);
 9       pStatement.executeUpdate();
10   }
11   conn.commit();

 

(4)Statement执行SQL语句

①Boolean  execute();

可执行任何SQL语句,返回是否返回ResultSet对象的布尔值。

②Integer  executeUpdate();  

执行DML(insert、update、delete)、DDL(create、alter、drop、truncate),返回影响行数。

③ResultSet  executeQuery();  

只能执行查询,返回ResultSet对象

 

(5)ResultSet的操作

①next()、previous()、first()、last()、beforeFirst()、afterLast()、absolute()等移动记录指针的方法

②getXxx()获取记录指正指向行、特定列的值

 

JDBC基础

标签:

人气教程排行