JDBC连接数据库

package lyf;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
//还是用到了sqljdbc4.jar中的com.microsoft.sqlserver.jdbc.SQLServerDriver,用于加载驱动


public class test {
    public static void main(String[] args) {
        //使用JDBC-ODBC桥接器建立数据库连接的方法
        Connection con=null;//Connection类负责建立与指定数据库的连接
        String url="jdbc:sqlserver://127.0.0.1:1433;DatabaseName=test";
        String sql="insert into test values(906,'cps')";
        //****************************************************************
        try {
            Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
            //返回与带有给定字符串名的类或接口相关联的 Class 对象 用于加载和注册驱动程序
            System.out.println("加载驱动成功");}            
        catch (ClassNotFoundException e){
            e.printStackTrace();
            System.out.println("找不到驱动程序类 ,加载驱动失败");}
        
        //****************************************************************
        try {
            con=DriverManager.getConnection(url,"lyf","lyf123");
            //它使用指定的数据库URL、用户名和用户密码创建一个连接
            //使DriverManager从注册的JDBC驱动程序中选择一个适当的驱动程序。
            //如果发生数据库访问错误,则程序抛出一个SQLException异常
            System.out.println("和ODBC数据源指定的数据库建立连接成功");}
         catch (SQLException e){
            e.printStackTrace();System.out.println("和ODBC数据源指定的数据库建立连接失败");}
        
        //****************************************************************
        try {
            Statement stmt=con.createStatement();
            //Statement类的主要功能是将SQL命令传送给数据库,并将SQL命令的执行结果返回
            
            stmt.executeUpdate(sql);
            //public int executeUPdate(String sql)throws SQLException方法,
            //用来执行SQL的INSERT、UPDATE和DELETE语句,返回值是插入、修改或删除的记录行数或者是0
            
            ResultSet rs=stmt.executeQuery("SELECT * FROM test");
            //public ResultSet executeQuery(String sql)throws SQLException方法,用来执行指定的SQL查询语句,返回查询结果。
            //如果发生数据库访问错误,则程序抛出一个SQLException异常
            while(rs.next()) { 
                //public boolean next() throws SQLExecption 利用到下个记录 相对previous() 
            System.out.println(rs.getInt("number")+"\t"+rs.getString("name")); } 
            rs.close();
            stmt.close();//public void close( )throws SQLException方法,用来释放Statement对象的数据库和JDBC资源
            con.close();//用来断开Connection类对象与数据库的连接
        } catch (SQLException e) {
            e.printStackTrace();System.out.println("Statement失败");}    
    }

}



PreparedStatement类提供的常用成员方法如下
public ResultSet executeQuery( )throws SQLException方法,使用SQL指令SELECT对数据库进行记录查询操作,并返回ResultSet对象
public int executeUpdate( )throws SQLException方法,使用SQL指令INSERT、DELETE和UPDATE对数据库进行添加、删除和修改记录(Record)操作
public void setDate(int parameterIndex,Date x)throws SQLException方法,用来给指定位置的参数设定日期型数值
public void setDouble(int parameterIndex,double x)throws SQLException方法,用来给指定位置的参数设定Double型数值

ResultSet类
ResultSet类表示从数据库中返回的结果集
public void update类型(int ColumnIndex)

Class.forName("com.mysql.jdbc.Driver");// 动态加载mysql驱动,==new com.mysql.jdbc.Driver();
String url = "jdbc:mysql://localhost:3306/javademo?"
        + "user=root&password=root&useUnicode=true&characterEncoding=UTF8";
        //javademo是数据库名称Mysql的JDBC URL编写方式为:jdbc:mysql//主机名称:连接端口/数据库名称?参数=值,
        //为了避免中文乱码要指定useUnicode和characterEncoding.
      Connection conn = DriverManager.getConnection(URL);//如果使用三个参数,则第一个参数要删除user=root&password=root
     
Class.forName("oracle.jdbc.driver.OracleDriver");

oracle URL:

jdbc:oracle:thin:@localhost:1521:SID

jdbc:oracle:thin:@//localhost:1521:SERVICENAME
thin:小型驱动,驱动方式
localhost 本机ip地址 127.0.0.1
SID:数据库的SID   SID安全标识符(Security Identifiers),是标识用户、组和计算机帐户的唯一的号码
SERVICENAME:数据库的SID


 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值