一、知识点
名词:数据库,关系型把数据库,SQL,JDBC
JDBC的功能和特点:
JDBC(Java Data Base Connectivity,java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。JDBC提供了一种基准,据此可以构建更高级的工具和接口,使数据库开发人员能够编写数据库应用程序
jdbc提供的借口主要有:1234
数据库编程的一般过程:
1加载驱动程序(JDBC驱动程序)”
2链接数据库
3执行sql
4关闭数据库
Connection con = DriverManager.getConnection("jdbc:odbc:wombat","login",
"password");
Statement stmt = con.createStatement();
ResultSet rs = stmt.executeQuery("SELECT a, b, c FROM Table1");
while (rs.next()) {
int x = rs.getInt("a");
String s = rs.getString("b");
float f = rs.getFloat("c");
}
二、程序实例
mysql数据库:
1创建好数据库oneeight,在数据库中有数据表 exployee
表中数据如下:
程序代码如下:
import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; public class laaa { public static void main(String[] args) { //声明Connection对象 Connection con; //驱动程序名 String driver = "com.mysql.jdbc.Driver"; //URL指向要访问的数据库名mydata String url = "jdbc:mysql://localhost:3306/oneeight"; //MySQL配置时的用户名 String user = "root"; //MySQL配置时的密码 String password = "1"; //遍历查询结果集 try { //加载驱动程序 Class.forName(driver); //1.getConnection()方法,连接MySQL数据库!! con = DriverManager.getConnection(url,user,password); if(!con.isClosed()) System.out.println("Succeeded connecting to the Database!"); //2.创建statement类对象,用来执行SQL语句!! Statement statement = con.createStatement(); //要执行的SQL语句 String sql = "select * from exployee"; //升工资操作 String sql1 = "UPDATE exployee set exployee.salary=exployee.salary*2;"; //3.ResultSet类,用来存放获取的结果集!! statement.executeUpdate(sql1); ResultSet rs = statement.executeQuery(sql); System.out.println("-----------------"); System.out.println("执行结果如下所示:"); System.out.println("-----------------"); System.out.println(" 学号" + "\t" + " 姓名"); System.out.println("-----------------"); String name = null; int num = 0; Double salary=null; String sex=null; while(rs.next()){ //获取stuname这列数据 name = rs.getString("name"); //获取stuid这列数据 num = rs.getInt("num"); salary=rs.getDouble("salary"); sex=rs.getString("sex"); //首先使用ISO-8859-1字符集将name解码为字节序列并将结果存储新的字节数组中。 //然后使用GB2312字符集解码指定的字节数组。 // name = new String(name.getBytes("ISO-8859-1"),"gb2312"); //输出结果 System.out.println("编号:"+num+ "名字" + name+"性别" + sex+"工资" + salary); } rs.close(); con.close(); } catch(ClassNotFoundException e) { //数据库驱动类异常处理 System.out.println("Sorry,can`t find the Driver!"); e.printStackTrace(); } catch(SQLException e) { //数据库连接失败异常处理 e.printStackTrace(); }catch (Exception e) { // TODO: handle exception e.printStackTrace(); }finally{ //System.out.println("数据库数据成功获取!!"); } } }