三,访问数据库
JDBC是java 数据连接(Java DataBase Connectivity)
JDBC API 由sun公司提供,java应用程序和不同数据库的接口!
JDBC Driver Manager 由sun 提供,管理不同的JDBC驱动
JDBC驱动,由数据库厂商提供。
DriverManager :管理JDBC驱动
Connection 接口:连接数据库,并担任传输任务。
Statement 接口,由Connection产生,负责执行Sql语句
ResultSet 接口,负责保存Statement 执行后所产生的查询结果
Java桥连:
import java.sql.*;
public class UserHelpSun {
private static final String DRIVER_CLASS="sun.jdbc.odbc.JdbcOdbcDriver";
private static final String DATABASE_CLASS="jdbc:odbc:news";
//news是指数据源。
private static final String USERNAME="sa";
//与数据库建立连接
public static Connection getConnection(){
Connection connection=null;
try {
Class.forName(DRIVER_CLASS);
connection=DriverManager.getConnection(DATABASE_CLASS,USERNAME,"");
} catch (Exception e) {
e.printStackTrace();
}
return connection;
}
纯Java驱动:
(获取连接的快捷方式:Window—Show View –other-输入DB ---双击----查看右下角,---右键—new )
import java.sql.*;
public class UserHelpMicrosoft {
private static final String DRIVER_CLASS="com.microsoft.sqlserver.jdbc.SQLServerDriver";
private static final String DATABASE_URL="jdbc:sqlserver://localhost:1433;DatabaseName=firstLevelTitle";
private static final String DATABASE_USER="sa";
static Connection con=null;
static PreparedStatement ps=null;
static ResultSet res=null;
//加载驱动并与数据库建立连接
public static Connection getConnection(){
try {
Class.forName(DRIVER_CLASS);
con=DriverManager.getConnection(DATABASE_URL,DATABASE_USER,"");
} catch (Exception e) {
System.out.println("没打开驱动");
e.printStackTrace();
}
return con;
}
Statement语句
ResultSet executeQuery(String sql) 执行查询获取到ResultSet对象
int executeUpdate(String sql) 执行增,删,改等操作!
boolean execute(String sql) 可以执行任意sql语句,返回一个布尔值,表示是否返回ResultSet
示例:
String sql=”insert into table values(1) ”;
con=DriverManager.getConnection(DATABASE_URL,DATABASE_USER,"");
Statement statement=com.CreateStatement(); //创造一个Statement对象
Statement.executeUPdate(sql);
最后关闭Statement语句
使用PreparedStatement语句
PreparedStatement ps=null;
con=connection.getConnection(); //自己写的获得连接的方法
String sql=”insert into firstTable values(?,?)”;
ps=con.prepareStatement(sql);
ps.setInt(1,3)
ps.setString(2,”aa”);
ps.executeUpdate(); //增,删,改全部用executeUpdate()方法执行。返回Int
最后关闭连接。
使用PreparedStatement进行查询
Con=connectionMangaer.getConnection();
String sql=”select * from table”;
Ps=con.preparedStatement(sql);
ResultSet rs=ps.executeQuery();
While(rs.next())
{
Int id=rs.getInt(“id”); //列名或下标 java桥连必须按顺序取数据纯java则不
}
最后关闭连接。
JDBC是java 数据连接(Java DataBase Connectivity)
JDBC API 由sun公司提供,java应用程序和不同数据库的接口!
JDBC Driver Manager 由sun 提供,管理不同的JDBC驱动
JDBC驱动,由数据库厂商提供。
DriverManager :管理JDBC驱动
Connection 接口:连接数据库,并担任传输任务。
Statement 接口,由Connection产生,负责执行Sql语句
ResultSet 接口,负责保存Statement 执行后所产生的查询结果
Java桥连:
import java.sql.*;
public class UserHelpSun {
private static final String DRIVER_CLASS="sun.jdbc.odbc.JdbcOdbcDriver";
private static final String DATABASE_CLASS="jdbc:odbc:news";
//news是指数据源。
private static final String USERNAME="sa";
//与数据库建立连接
public static Connection getConnection(){
Connection connection=null;
try {
Class.forName(DRIVER_CLASS);
connection=DriverManager.getConnection(DATABASE_CLASS,USERNAME,"");
} catch (Exception e) {
e.printStackTrace();
}
return connection;
}
纯Java驱动:
(获取连接的快捷方式:Window—Show View –other-输入DB ---双击----查看右下角,---右键—new )
import java.sql.*;
public class UserHelpMicrosoft {
private static final String DRIVER_CLASS="com.microsoft.sqlserver.jdbc.SQLServerDriver";
private static final String DATABASE_URL="jdbc:sqlserver://localhost:1433;DatabaseName=firstLevelTitle";
private static final String DATABASE_USER="sa";
static Connection con=null;
static PreparedStatement ps=null;
static ResultSet res=null;
//加载驱动并与数据库建立连接
public static Connection getConnection(){
try {
Class.forName(DRIVER_CLASS);
con=DriverManager.getConnection(DATABASE_URL,DATABASE_USER,"");
} catch (Exception e) {
System.out.println("没打开驱动");
e.printStackTrace();
}
return con;
}
Statement语句
ResultSet executeQuery(String sql) 执行查询获取到ResultSet对象
int executeUpdate(String sql) 执行增,删,改等操作!
boolean execute(String sql) 可以执行任意sql语句,返回一个布尔值,表示是否返回ResultSet
示例:
String sql=”insert into table values(1) ”;
con=DriverManager.getConnection(DATABASE_URL,DATABASE_USER,"");
Statement statement=com.CreateStatement(); //创造一个Statement对象
Statement.executeUPdate(sql);
最后关闭Statement语句
使用PreparedStatement语句
PreparedStatement ps=null;
con=connection.getConnection(); //自己写的获得连接的方法
String sql=”insert into firstTable values(?,?)”;
ps=con.prepareStatement(sql);
ps.setInt(1,3)
ps.setString(2,”aa”);
ps.executeUpdate(); //增,删,改全部用executeUpdate()方法执行。返回Int
最后关闭连接。
使用PreparedStatement进行查询
Con=connectionMangaer.getConnection();
String sql=”select * from table”;
Ps=con.preparedStatement(sql);
ResultSet rs=ps.executeQuery();
While(rs.next())
{
Int id=rs.getInt(“id”); //列名或下标 java桥连必须按顺序取数据纯java则不
}
最后关闭连接。