`

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();  
    }  
  
}  
 
分享到:
评论

相关推荐

    mysql8版本jdbc驱动包

    mysql8-jdbc驱动,用于mysql数据库连接,jdbc驱动。

    达梦数据库jdbc连接

    1. `dm8-oracle-jdbc16-wrapper`:这是一个针对达梦数据库的JDBC驱动包装器,它可能模仿了Oracle JDBC驱动的接口和行为,使得在使用达梦数据库时,代码可以与使用Oracle数据库时保持一致,便于迁移和兼容。...

    apache seatunnel支持hive jdbc

    apache seatunnel支持hive jdbc

    jdbc驱动jar包.zip

    Java JDBC(Java Database Connectivity)是Java编程语言中用于与数据库交互的一组接口和类,它允许Java应用程序连接到各种数据库。在Java应用中,JDBC驱动程序扮演着至关重要的角色,它作为Java代码和数据库之间的...

    sql server jdbc驱动

    sql server jdbc驱动

    kingbaseV8 jdbc 驱动

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

    jdbc数据库

    -为什么使用jdbc:因为java程序员工作时需要连接多种数据库(mysql,oracle,sql server),为了避免每一个数据库都学习一套新的api,sun公司定义了jdbc接口(方法的申明),各个数据库厂商去写实现类(驱动),这样...

    clickhouse-jdbc-0.4.6-all

    clickhouse-jdbc-0.4.6-all

    spring-jdbc jar包.rar

    《Spring JDBC:构建高效数据访问层》 Spring JDBC是Spring框架的一个重要组成部分,它提供了一种简化传统JDBC编程的抽象层,使得开发者能够更轻松、更安全地处理数据库交互。"spring-jdbc jar包"包含了Spring框架...

    SpringBoot中封装jdbc工具类

    现在的数据层的开发,大多会使用...但是在一些极端的场景下往往原生的jdbc方式操作数据库更灵活,性能更高。由于部分场景下MyBatis或JPA之类无法满足我的需求,所以我打算自己封装一套查数据库的工具类。 文章地址: ...

    JDBC内容之宋红康版本

    JDBC 内容之宋红康版本 JDBC 是 Java 访问数据库的基石,定义了用来访问数据库的标准 Java 类库(java.sql,javax.sql),使用这些类库可以以一种标准的方法、方便地访问数据库资源。JDBC 为访问不同的数据库提供了...

    access的jdbc驱动

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

    Hive-jdbc-3.1.1.zip

    Hive JDBC是Apache Hive项目的一部分,它为Hive数据仓库提供了与Java数据库连接(JDBC)接口的兼容性。这使得开发人员能够使用标准的JDBC驱动程序来连接到Hive服务器,从而在各种应用程序中方便地进行大数据查询和...

    jdbc核心代码.docx

    JDBC核心代码详解 在本文中,我们将详细解释JDBC(Java Database Connectivity)的核心代码,涵盖了JDBC的基本概念、步骤、语句和实践操作。 JDBC概述 JDBC是Java语言中用于连接数据库的API(Application ...

    JDBC Driver

    **JDBC驱动程序详解** Java Database Connectivity (JDBC) 是Java平台中用于访问数据库的标准Java API,由Sun Microsystems(现已被Oracle公司收购)开发。它为Java开发者提供了一种规范,使得他们能够编写与数据库...

    sun.jdbc.odbc.jdbcodbcdriver-Maven.zip

    标题中的"sun.jdbc.odbc.jdbcodbcdriver"指的是Java数据库连接(JDBC)中的一个特定驱动,即JDBC-ODBC桥接驱动。这个驱动在早期的Java版本中被广泛使用,它允许Java应用程序通过ODBC(Open Database Connectivity)...

    可用于oracle19c的jdbc驱动

    Oracle JDBC驱动是Oracle数据库与Java应用程序之间通信的重要桥梁。标题提到的"可用于Oracle19c的JDBC驱动"指的是Oracle公司为19c版本数据库提供的Java Database Connectivity (JDBC)驱动程序,它允许Java应用程序...

    hive_jdbc_2.6.2.1002.zip

    Hive JDBC 2.6.2.1002 是一个关键组件,它在大数据处理领域扮演着重要的角色。Hive 是由 Apache 软件基金会开发的一个数据仓库工具,它允许用户使用类 SQL 查询语言(HQL)来处理存储在分布式文件系统中的大规模数据...

Global site tag (gtag.js) - Google Analytics