`

JDBC

    博客分类:
  • JAVA
 
阅读更多

----------------------------------连接各种数据库--------------------------------------------

 

 

 

1、Oracle8/8i/9i数据库(thin模式)
Class.forName("oracle.jdbc.driver.OracleDriver").newInstance();
String url="jdbc:oracle:thin:@localhost:1521:orcl";
//orcl为数据库的SID
String user="test";
String password="test";
Connection conn= DriverManager.getConnection(url,user,password);

 

 

2、DB2数据库
Class.forName("com.ibm.db2.jdbc.app.DB2Driver ").newInstance();
String url="jdbc:db2://localhost:5000/sample";
//sample为你的数据库名
String user="admin";
String password="";
Connection conn= DriverManager.getConnection(url,user,password);

 

 

3、Sql Server7.0/2000数据库
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance();
String url="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=mydb";
//mydb为数据库
String user="sa";
String password="";
Connection conn= DriverManager.getConnection(url,user,password);

 

 

4、Sybase数据库
Class.forName("com.sybase.jdbc.SybDriver").newInstance();
String url =" jdbc:sybase:Tds:localhost:5007/myDB";
//myDB为你的数据库名
Properties sysProps = System.getProperties();
SysProps.put("user","userid");
SysProps.put("password","user_password");
Connection conn= DriverManager.getConnection(url, SysProps);

 

 

5、Informix数据库
Class.forName("com.informix.jdbc.IfxDriver").newInstance();
String url =
"jdbc:informix-sqli://123.45.67.89:1533/myDB:INFORMIXSERVER=myserver;
user=testuser;password=testpassword";
//myDB为数据库名
Connection conn= DriverManager.getConnection(url);

 

 

6、MySQL数据库
Class.forName("org.gjt.mm.mysql.Driver").newInstance();
String url ="jdbc:mysql://localhost/myDB?user=soft&password=soft1234&useUnicode=true&characterEncoding=8859_1"
//myDB为数据库名
Connection conn= DriverManager.getConnection(url);

 

 

7、PostgreSQL数据库
Class.forName("org.postgresql.Driver").newInstance();
String url ="jdbc:postgresql://localhost/myDB"
//myDB为数据库名
String user="myuser";
String password="mypassword";
Connection conn= DriverManager.getConnection(url,user,password);


 
8、JDBC-ODBC桥
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection con=DriverManager.getConnection("jdbc:odbc:jsp");
jsp为建立的odbc数据源名,事先要先将SQL server的表设置为数据源。在“管理工具”-“数据源odbc”里用系统DNS添加。

 

 

8.Oracle8/8i/9i数据库(thin模式) 
//import java.sql.*; 
Class.forName("oracle.jdbc.driver.OracleDriver").newInstance(); 
String url="jdbc:oracle:thin:@localhost:1521:orcl"; //orcl为数据库的SID 
String user="test"; 
String password="test"; 
Connection conn= DriverManager.getConnection(url,user,password);  
Statement stmtNew=conn.createStatement();

 

 

9.DB2数据库 
//import java.sql.*; 
Class.forName("com.ibm.db2.jdbc.app.DB2Driver ").newInstance(); 
String url="jdbc:db2://localhost:5000/sample"; //sample为你的数据库名 
String user="admin"; 
String password=""; 
Connection conn= DriverManager.getConnection(url,user,password);  
Statement stmtNew=conn.createStatement();

 

 

10.Sql Server7.0/2000数据库 
//import java.sql.*; 
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver").newInstance(); 
//String url="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=db2"; //7.0、2000 
String url="jdbc:sqlserver://localhost:1433;DatabaseName=db2"; //2005 
//db2为数据库名 
String user="sa"; 
String password=""; 
Connection conn= DriverManager.getConnection(url,user,password);  
Statement stmtNew=conn.createStatement();

 

 

11.Sybase数据库 
//import java.sql.*; 
Class.forName("com.sybase.jdbc.SybDriver").newInstance(); 
String url =" jdbc:sybase:Tds:localhost:5007/myDB";//myDB为你的数据库名 
Properties sysProps = System.getProperties(); 
SysProps.put("user","userid"); 
SysProps.put("password","user_password"); 
Connection conn= DriverManager.getConnection(url, SysProps);  
Statement stmtNew=conn.createStatement();

 

 

12.Informix数据库 
//import java.sql.*; 
Class.forName("com.informix.jdbc.IfxDriver").newInstance(); 
String url = "jdbc:informix-sqli://123.45.67.89:1533/myDB:INFORMIXSERVER=myserver; 
user=testuser;password=testpassword"; //myDB为数据库名 
Connection conn= DriverManager.getConnection(url);  
Statement stmtNew=conn.createStatement();

 

 

13.MySQL数据库 
//import java.sql.*; 
//Class.forName("org.gjt.mm.mysql.Driver").newInstance(); 
Class.forName("com.mysql.jdbc.Driver"); 
//String url ="jdbc:mysql://localhost/myDB?user=soft&password=soft1234&useUnicode=true&characterEncoding=8859_1"; 
String url ="jdbc:mysql://localhost:3306/myDB";

//myDB为数据库名 
Connection conn= DriverManager.getConnection(url,"root","root");  
Statement stmtNew=conn.createStatement();

 

 

14.PostgreSQL数据库 
//import java.sql.*; 
Class.forName("org.postgresql.Driver").newInstance(); 
String url ="jdbc:postgresql://localhost/myDB" //myDB为数据库名 
String user="myuser"; 
String password="mypassword"; 
Connection conn= DriverManager.getConnection(url,user,password); 
Statement stmtNew=conn.createStatement();

 

 

15.access数据库直连用ODBC的 
//import java.sql.*; 
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver") ; 
String url="jdbc:odbc:Driver={MicroSoft Access Driver (*.mdb)};DBQ="+application.getRealPath("/Data/ReportDemo.mdb"); 
Connection conn = DriverManager.getConnection(url,"sa",""); 
Statement stmtNew=conn.createStatement();

 

 

16.程序计时 
long time1=System.currentTimeMillis(); 
long time2=System.currentTimeMillis(); 
long interval=time2-time1;

17.延时 
try { 
Thread.sleep(Integer.Parse(%%1)); 
} catch(InterruptedException e) { 
e.printStackTrace(); 
}

 

 

18.连接Excel文件 
//import java.sql.*; 
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); 
String url = "jdbc:odbc:driver={Microsoft Excel Driver (*.xls)};DBQ=D:\\myDB.xls"; // 不设置数据源 
String user="myuser"; 
String password="mypassword"; 
Connection conn= DriverManager.getConnection(url,user,password); 
Statement stmtNew=conn.createStatement();

 

--------------------------------------------------------------------------------------------

 

1:JDBC 
Java DataBase Connectivity(Java数据库连接技术) 


2:JDBC设计的目的。 

是一种接口的类组成。使用接口的特点,只定义规范,让不同的 
数据库厂商实现。这样程序员不用关心如何连接各种数据库的底 
层实现。 

3:JDBC的组成结构 

JDBC_API(SUN公司提供) 

驱动管理器(用于连接API与驱动之间的连接关系) 


数据库的驱动程序(数据库厂商提供) 


4:JDBC的4种驱动的类型 
A:JDBC_ODBC桥 

B:本地API 

C:网络协议驱动 

D:本地协议驱动。 

A/B:适合C/S架构 

C/D:适合B/S架构。 

效率:B>C>D>A 


5:JDBC的连接过程: 

前提:将数据库的驱动包拷到工程中。 

A:加载驱动。 

B:获取连接 

C:构造SQL语句执行对象 

D:发送SQL 

E:关闭资源(关闭的先后问题) 


6:Connection接口的方法: 
close() 
savePoint(name) 
commit() 
rollback() 
rollback(SavePoint) 
setAutoCommit(); 


createStatement(); 
prepareStatement(String sql) 
prepareCall(String sql) 

7:Statement 
addBatch(String sql) 
executeBatch 
clearBatch() 

close() 

execute() //执行DDL,DML和Select语句。 
true:表示执行的是SElect语句。 
false:表示执行提DDL和insert/update/delete语句。 

executeUpdate()  //执行DDL和DML语句。返回影响行数的结果。 
executeQuery(); //执行Select语句。 

8:ResultSet 
结果集:结果集与游标或者迭代器的机制一致。停在第一条记录的前面。 

要用的话,必须Next一下。 

9、例子 

import java.sql.Connection;  
import java.sql.DriverManager;  
import java.sql.PreparedStatement;  
import java.sql.ResultSet;  
import java.sql.ResultSetMetaData;  
import java.sql.SQLException;  
import java.sql.Statement;  
  
public class TestJDBC {  
  
  
    public static void insertBatch() {  
        // userid/username/spassword/deptid  
        Connection connection = null;  
        Statement statement = null;  
  
        String driver = "oracle.jdbc.driver.OracleDriver";  
        String url = "jdbc:oracle:thin:@127.0.0.1:1521:orcl";  
        String user = "user";  
        String password = "password";  
  
        try {  
            // 1 加载驱动程序  
            Class.forName(driver);  
        } catch (ClassNotFoundException e) {  
            // TODO Auto-generated catch block  
            e.printStackTrace();  
        }  
  
        try {  
            // 2 建立数据库连接  
            connection = DriverManager.getConnection(url, user, password);  
            // 改变事务提交方式,以便手动控制事务  
            connection.setAutoCommit(false);  
            // 3 执行SQL语句  
            statement = connection.createStatement();  
  
            // 批量插入  
            String sql = "insert into t_user values(seq_t_user.nextval,'oracle1105' || seq_t_user.currval,'666666',2)";  
            statement.addBatch(sql);  
            sql = "insert into t_user values(seq_t_user.nextval,'oracle1105' || seq_t_user.currval,'666666',2)";  
            statement.addBatch(sql);  
            sql = "insert into t_user values(seq_t_user.nextval,'oracle1105' || seq_t_user.currval,'666666',2)";  
            statement.addBatch(sql);  
            sql = "insert into t_user values(seq_t_user.nextval,'oracle1105' || seq_t_user.currval,'666666',2)";  
            statement.addBatch(sql);  
            sql = "insert into t_user values(seq_t_user.nextval,'oracle1105' || seq_t_user.currval,'666666',2)";  
            statement.addBatch(sql);  
  
            statement.executeBatch();  
            // 手动提交  
            connection.commit();  
        } catch (SQLException e) {  
            // TODO Auto-generated catch block  
            e.printStackTrace();  
        } finally {  
            // 4 关闭资源  
            // try {  
            // statement.close();  
            // connection.close();  
            // } catch (SQLException e) {  
            // // TODO Auto-generated catch block  
            // e.printStackTrace();  
            // }  
  
        }  
  
    }  
  
    public static void query() {  
  
        Connection connection = null;  
        Statement statement = null;  
        ResultSet resultSet = null;  
  
        String driver = "oracle.jdbc.driver.OracleDriver";  
        String url = "jdbc:oracle:thin:@127.0.0.1:1521:orcl";  
        String user = "user";  
        String password = "password";  
        String sql = "select * from t_user";  
        try {  
            // 1 加载驱动程序  
            Class.forName(driver);  
        } catch (ClassNotFoundException e) {  
            // TODO Auto-generated catch block  
            e.printStackTrace();  
        }  
  
        try {  
            // 2 建立数据库连接  
            connection = DriverManager.getConnection(url, user, password);  
            // 3 执行SQL语句  
            statement = connection.createStatement();  
            // 4 接收查询结果  
            resultSet = statement.executeQuery(sql);  
  
            while (resultSet.next()) {  
                // 1 字段顺序  
                int userid = resultSet.getInt(1);  
                String username = resultSet.getString("username");  
  
                System.out  
                        .println("userid:" + userid + ",username:" + username);  
            }  
              
            ResultSetMetaData resultSetMetaData=resultSet.getMetaData();  
            int count=resultSetMetaData.getColumnCount();  
              
            System.out.println("列数:"+count);  
            for (int i = 1; i <= count; i++) {  
                System.out.println("列名:"+resultSetMetaData.getColumnName(i));  
                System.out.print("类型:"+resultSetMetaData.getColumnTypeName(i));  
                  
            }  
              
  
        } catch (SQLException e) {  
            // TODO Auto-generated catch block  
            e.printStackTrace();  
        } finally {  
            // 4 关闭资源  
            try {  
                resultSet.close();  
                statement.close();  
                connection.close();  
            } catch (SQLException e) {  
                // TODO Auto-generated catch block  
                e.printStackTrace();  
            }  
  
        }  
  
    }  
  
      
    public static void main(String[] args) {  
        query();  
    }  
  
}  
 
分享到:
评论

相关推荐

    JDBCDriver3.0.rar_jdbc driver 3.0_sql jdbc 3.0_sql server jdbc_s

    《深入理解JDBC Driver 3.0:聚焦SQL Server JDBC》 在IT行业中,数据库连接是应用程序与数据存储之间的桥梁,而JDBC(Java Database Connectivity)则是Java平台中用于访问数据库的标准API。JDBC Driver 3.0是针对...

    sqlserver驱动包 jdbc驱动 sqljdbc.jar和sqljdbc4.jar

    SQL Server驱动包是用于Java应用程序通过JDBC(Java Database Connectivity)接口与Microsoft SQL Server数据库进行交互的必备组件。本文将详细介绍这两个重要的驱动文件——sqljdbc.jar和sqljdbc4.jar,以及如何...

    sqljdbc和sqljdbc4 sqlserver最新驱动

    SQLJDBC和SQLJDBC4是Microsoft为Java应用程序提供的用于连接SQL Server数据库的驱动程序。这两个版本都是JDBC(Java Database Connectivity)驱动,允许Java开发者在应用程序中与SQL Server进行交互。下面将详细介绍...

    Spring Data JDBC与JDBC的区别

    Spring Data JDBC与JDBC是两种不同的数据库访问方式,它们在Java开发中有着广泛的应用。JDBC(Java Database Connectivity)是Java平台的标准API,用于与各种数据库进行交互。它提供了低级别的数据库操作,如建立...

    mysql jdbc 驱动 适用于5.6版本及以下数据库

    mysql jdbc 驱动 适用于5.6版本及以下数据库 mysql jdbc 驱动 适用于5.6版本及以下数据库 mysql jdbc 驱动 适用于5.6版本及以下数据库 mysql jdbc 驱动 适用于5.6版本及以下数据库 mysql jdbc 驱动 适用于5.6版本及...

    mysql jdbc 驱动 适用于5.7及以上版本数据库

    mysql jdbc 驱动 适用于5.7及以上版本数据库 mysql jdbc 驱动 适用于5.7及以上版本数据库 mysql jdbc 驱动 适用于5.7及以上版本数据库 mysql jdbc 驱动 适用于5.7及以上版本数据库 mysql jdbc 驱动 适用于5.7及以上...

    sqljdbc41、sqljdbc42的官方jar包

    在Java编程语言中,JDBC(Java Database Connectivity)是一个核心的API,用于连接Java应用程序与各种类型的数据库。这里我们关注的是两个特定版本的Microsoft SQL Server的JDBC驱动:sqljdbc41.jar和sqljdbc42.jar...

    Dm7JdbcDriver16.jar Dm7JdbcDriver17.jar Dm7JdbcDriver18.jar

    在给定的压缩包文件中,包含了三个不同版本的达梦JDBC驱动,分别是Dm7JdbcDriver16.jar、Dm7JdbcDriver17.jar和Dm7JdbcDriver18.jar。 1. **JDBC驱动介绍**: JDBC是Java中用于与各种数据库进行交互的标准接口,它...

    sql server2000 jdbc

    SQL Server 2000 JDBC 是Java编程语言与Microsoft SQL Server 2000数据库进行交互的一种重要方式。JDBC(Java Database Connectivity)是Java API,允许Java应用程序通过Java虚拟机(JVM)与各种数据库建立连接。在...

    Access_JDBC30

    标题 "Access_JDBC30" 暗示了这是一个与Microsoft Access数据库相关的Java JDBC驱动程序。JDBC(Java Database Connectivity)是Java编程语言中用于连接和操作数据库的标准接口。这个jar包,"Access_JDBC30.jar",...

    kingbaseV8 jdbc 驱动

    KingbaseV8 JDBC驱动是连接KingbaseV8数据库的重要组件,允许Java应用程序通过JDBC(Java Database Connectivity)接口与数据库进行交互。JDBC是Java语言中用来规范客户端程序如何访问数据库的应用程序接口,提供了...

    sqljdbc42.jar、sqljdbc41.jar 更新日期2017-12-21

    标题中的"sqljdbc42.jar、sqljdbc41.jar 更新日期2017-12-21"指的是Microsoft SQL Server的Java Database Connectivity (JDBC) 驱动的两个不同版本,它们分别对应于Java SE 7和Java SE 8的兼容性。JDBC驱动是Java...

    sqljdbc4(sqlserver jdbc驱动下载和安装)

    在IT行业中,数据库是至关重要的组成部分,而SQL Server作为一款广泛应用的关系型数据库管理系统,它的连接与操作离不开JDBC(Java Database Connectivity)驱动。本篇将详细介绍如何下载和安装sqljdbc4,这是...

    sqljdbc4.jar, sqljdbc41.jar, sqljdbc42.jar三个包

    标题中的"sqljdbc4.jar, sqljdbc41.jar, sqljdbc42.jar"是指Microsoft SQL Server为Java应用程序提供的Java Database Connectivity (JDBC)驱动程序。这些JAR文件是数据库连接的关键,允许Java代码与SQL Server进行...

    java jdbc 需要包

    Java JDBC(Java Database Connectivity)是Java编程语言中用于与各种数据库进行交互的一组接口和类。它提供了一种标准化的方法,让程序员可以使用SQL语句访问数据库,而无需关心具体的数据库实现细节。在Java应用...

    access的jdbc驱动

    Access的JDBC驱动是Java数据库连接(Java Database Connectivity, JDBC)的一种实现,它允许Java程序与Microsoft Access数据库进行交互。在JDK 1.8之后,Oracle公司不再默认提供对ODBC(Open Database Connectivity...

    sqljdbc 3.0及4.0

    `sqljdbc`是Microsoft提供的一个驱动程序,使得Java应用程序能够与SQL Server数据库进行交互。在这个场景中,我们关注的是`sqljdbc 3.0`和`4.0`版本,这两个版本都是专门为Java设计的,用于连接SQL Server 2000。 `...

    Windowssever 2016 连sqlsever的jar包 JDK1.7/1.8 sqljdbc41/sqljdbc42

    `sqljdbc41`和`sqljdbc42`是SQL Server特有的一套JDBC驱动,分别对应JDBC 4.1和JDBC 4.2标准,适用于JDK 7和JDK 8。 1. **JDBC 4.1 (sqljdbc41.jar)**:这个版本的驱动支持JDK 7,它引入了新的特性,如异步操作、...

Global site tag (gtag.js) - Google Analytics