1. Class.forName() :加载一个驱动.(Class.forName("com.mysql.jdbc.Driver") 为加载一个mysql的JDBC驱动)
2. DriverManager.getConnection():为返回数据库的连接,能否连上数据库就看这步了,如
Connection conn = DriverManager.getConnection("jdbc:mysql://IP地址:3306/数据库名", 用户名, 用户登陆密码);
3. ResultSet :结果集,用SQL语句操作数据库后所得到的结果都返回到结果集中
Statement接口的用法:(Statement只能处理静态SQL语句,即SQL语句中的变量是固定的)
1.Statement stmt = conn.CreateStatement() 创建一个Statement来静态处理SQL语句
2.ResultSet rs = stmt.executeQuery(SQL) 执行SQL语句(注:executeQuery是处理查询的SQL语句的)
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
public class Test {
public static void main(String[] args) {
Connection conn = null;
try {
Class.forName("com.mysql.jdbc.Driver");// 加载一个驱动(mysql驱动)
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
try {
conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/zje", "root", "zhujunwen");
// mysql表示数据库软件,localhost为IP地址,3306为端口号,zje为数据库名
// root为用户名,zhujunwen处为数据库密码
} catch (SQLException e) {
e.printStackTrace();
}
String sql = "select id,name from mess"; //SQL语句:从mess数据表中显示信息的id 和 name
Statement stmt;
try {
stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery(sql); //执行SQL语句,结果返回到 rs 中
while (rs.next()) {
int id = rs.getInt(1); //获取数据表中第一列的数据
String name = rs.getString(2); //获取数据表中第二列的数据
System.out.println("id:" + id + ",name:" + name);
}
} catch (SQLException e) {
e.printStackTrace();
} finally {
if (conn != null)
try {
conn.close(); //关闭数据库
} catch (SQLException e) {
e.printStackTrace();
}
}
}
}
这样就可以输入 zje数据库中 mess 数据表中第一列(id)和第二列(name)的数据