Java 连接各种数据库

来源:互联网 发布:如何用java编写计算器 编辑:程序博客网 时间:2024/06/14 18:37

SQLite - Java



在 Java 程序中使用 SQLite 之前,我们需要确保机器上已经有 SQLite JDBC Driver 驱动程序和 Java。
从 sqlite-jdbc 库下载 sqlite-jdbc-(VERSION).jar 的最新版本。
https://bitbucket.org/xerial/sqlite-jdbc/downloads


在您的 class 路径中添加下载的 jar 文件 sqlite-jdbc-(VERSION).jar,或者在 -classpath 选项中使用它。


连接数据库
下面的 Java 程序显示了如何连接到一个现有的数据库。如果数据库不存在,那么它就会被创建,最后将返回一个数据库对象。


import java.sql.*;


public class SQLiteJDBC
{
  public static void main( String args[] )
  {
    Connection c = null;
    try {
      Class.forName("org.sqlite.JDBC");
      c = DriverManager.getConnection("jdbc:sqlite:test.db");
    } catch ( Exception e ) {
      System.err.println( e.getClass().getName() + ": " + e.getMessage() );
      System.exit(0);
    }
    System.out.println("Opened database successfully");
  }
}


========


java连接MYSQL



首先要安装有JDK。然后安装MySQL。
配置好这两个环境后,下载JDBC驱动mysql-connector-java-5.0.5.zip。然后将其解压缩到任一目录。
然后将其目录下的mysql-connector-java-5.0.5-bin.jar加到classpath里,具体如下:“我的电脑”-> “属性” ->  “高级” ->  “环境变量”,在系统变量那里编辑classpath,将D:\mysql-connector-java-5.0.5\mysql-connector-java-5.0.5-bin.jar加到最后,


在加这个字符串前要加“;”,以与前一个classpath区分开。然后确定。


环境配置好了。现在,先配置MySQL,设其用户名为“root”,密码为“root”。在命令行或用一个SQL的前端软件创建Database。


先创建数据库:


CREATE DATABASE SCUTCS;


接着,创建表:


CREATE TABLE STUDENT


(


SNO CHAR(7) NOT NULL,


   SNAME VARCHAR(8) NOT NULL,


   SEX CHAR(2) NOT NULL,


   BDATE DATE NOT NULL,


   HEIGHT DEC(5,2) DEFAULT 000.00,


   PRIMARY KEY(SNO)


);


然后插入数据,可以用SQL语句insert into <表名> values  (value1, value2, ...);


也可以用SQLyog来操作


编写.java文件来演示如何访问MySQL数据库。


import java.sql.*;


public class JDBCTest {


public static void main(String[] args){


           // 驱动程序名
           String driver = "com.mysql.jdbc.Driver";


           // URL指向要访问的数据库名scutcs
           String url = "jdbc:mysql://127.0.0.1:3306/scutcs";


           // MySQL配置时的用户名
           String user = "root"; 


           // MySQL配置时的密码
           String password = "root";


           try { 
            // 加载驱动程序
            Class.forName(driver);


            // 连续数据库
            Connection conn = DriverManager.getConnection(url, user, password);


            if(!conn.isClosed()) 
             System.out.println("Succeeded connecting to the Database!");


            // statement用来执行SQL语句
            Statement statement = conn.createStatement();


            // 要执行的SQL语句
            String sql = "select * from student";


            // 结果集
            ResultSet rs = statement.executeQuery(sql);


            System.out.println("-----------------");
            System.out.println("执行结果:");
            System.out.println("-----------------");
            System.out.println(" 学号" + "\t" + " 姓名");
            System.out.println("-----------------");


            String name = null;


            while(rs.next()) {
    
             // 选择sname这列数据
             name = rs.getString("sname");
    
             // 首先使用ISO-8859-1字符集将name解码为字节序列并将结果存储新的字节数组中。
             // 然后使用GB2312字符集解码指定的字节数组
             name = new String(name.getBytes("ISO-8859-1"),"GB2312");


             // 输出结果
             System.out.println(rs.getString("sno") + "\t" + name);
            }


            rs.close();
            conn.close();


           } catch(ClassNotFoundException e) {




            System.out.println("Sorry,can`t find the Driver!"); 
            e.printStackTrace();




           } catch(SQLException e) {




            e.printStackTrace();




           } catch(Exception e) {




            e.printStackTrace();




           } 

}


接下来我们运行一下看下效果:
D:\testjdbc>javac JDBCTest.java


D:\testjdbc>java JDBCTest
Succeeded connecting to the Database!
......


========


Java连接Oracle



import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.ResultSet;
import java.sql.Statement;
public class DB {
    private static Connection con = null;
    private static Statement sql = null;
    private static ResultSet rs = null;
    public static void main(String[] args) throws SQLException {
       int no;
       String dep;
       String sal;
       try {
           con = dbConn("snpw1", "welcome1");
           if (con == null) {
              System.out.print("连接失败");
              System.exit(0);
           }
           sql = con.createStatement();
           rs = sql.executeQuery("select empid, deptid, salary from oracle_employee");
           System.out.println("工号" + "            " + "部门号" + "             "+ "薪水");
           while (rs.next()) {
              no = rs.getInt(1);
              dep = rs.getString(2);
              sal = rs.getString(3);
              System.out.println(no + "         " + dep + "         " + sal);
           }
       } catch (Exception e) {
           e.printStackTrace();
 
       } finally {
           con.close();
       }
    }
    public static Connection dbConn(String name, String pass) {
        Connection c = null;
        try {
            Class.forName("oracle.jdbc.driver.OracleDriver");
        } catch (ClassNotFoundException e) {
            e.printStackTrace();
        }
        try {
            c = DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:orcl", name, pass);
        } catch (SQLException e) {
            e.printStackTrace();
        }
        return c;
     }
}


注意:要导入JDBC驱动,鼠标右键JRE System Libray->Build Path->Configure Build Path->Add External JARs,然后选择要导入的JDBC驱动包就可以了。
0 0
原创粉丝点击