个性化阅读
专注于IT技术分析

Java的SQLite使用例子

本文概要

与Java程序使用SQLite,你必须有SQLite的JDBC驱动程序和Java建立在系统上。按照下面的步骤:

  • 从sqlite的-JDBC库下载最新版本的sqlite-JDBC-(VERSION)的.jar的。
  • 下载的jar文件添加到类路径。
  • 现在,你可以使用Java连接到SQLite数据库。

连接到SQLite数据库

使用下面的代码连接到使用Java编程语言的SQLite数据库:

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
 
public class Connect {
     /**
     * Connect to a sample database
     */
    public static void connect() {
        Connection conn = null;
        try {
            // db parameters
            String url = "jdbc:sqlite:C:/sqlite/JTP.db";
            // create a connection to the database
            conn = DriverManager.getConnection(url);
            
            System.out.println("Connection to SQLite has been established.");
            
        } catch (SQLException e) {
            System.out.println(e.getMessage());
        } finally {
            try {
                if (conn != null) {
                    conn.close();
                }
            } catch (SQLException ex) {
                System.out.println(ex.getMessage());
            }
        }
    }
    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {
        connect();
    }
}

它与你已经创建的数据库连接JTP.db.


使用Java创建数据库

你也可以使用Java编程语言创建SQLite中一个新的数据库。让我们创建一个名为“SSSIT.db”数据库。创建一个公共类“创建”,使用下面的代码:

import java.sql.Connection;
import java.sql.DatabaseMetaData;
import java.sql.DriverManager;
import java.sql.SQLException;
 
public class Create {

    public static void createNewDatabase(String fileName) {
 
        String url = "jdbc:sqlite:C:/sqlite/" + fileName;
 
        try {
        	Connection conn = DriverManager.getConnection(url);
            if (conn != null) {
                DatabaseMetaData meta = conn.getMetaData();
                System.out.println("The driver name is " + meta.getDriverName());
                System.out.println("A new database has been created.");
            }
 
        } catch (SQLException e) {
            System.out.println(e.getMessage());
        }
    }

    public static void main(String[] args) {
        createNewDatabase("SSSIT.db");
    }
}

现在创建了一个名为“SSSIT.db”新的数据库。你可以看到它,你已经安装了SQLite的。


创建使用Java表

让我们创建一个名为“员工”列有“名”和“能力”表。创建一个类名“CREATETABLE”,具有下面的代码:

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.Statement;
 
public class CreateTable {
 
    public static void createNewTable() {
        // SQLite connection string
        String url = "jdbc:sqlite:C://sqlite/SSSIT.db";
        
        // SQL statement for creating a new table
        String sql = "CREATE TABLE IF NOT EXISTS employees (\n"
                + "	id integer PRIMARY KEY,\n"
                + "	name text NOT NULL,\n"
                + "	capacity real\n"
                + ");";
        
        try{
        	Connection conn = DriverManager.getConnection(url);
            Statement stmt = conn.createStatement();
            stmt.execute(sql);
        } catch (SQLException e) {
            System.out.println(e.getMessage());
        }
    }
 
    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {
        createNewTable();
    }
 
}

它会创建SSSIT.db数据库中的表“雇员”。


在表插入记录

创建表后,使用下面的代码在表中插入一些记录。创建一个新的类“InsertRecords”,具有以下代码:

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.SQLException;
 
public class InsertRecords {
 
    private Connection connect() {
        // SQLite connection string
        String url = "jdbc:sqlite:C://sqlite/SSSIT.db";
        Connection conn = null;
        try {
            conn = DriverManager.getConnection(url);
        } catch (SQLException e) {
            System.out.println(e.getMessage());
        }
        return conn;
    }
 

    public void insert(String name,double capacity) {
        String sql = "INSERT INTO employees(name,capacity) VALUES(?,?)";
 
        try{
        	Connection conn = this.connect();
            PreparedStatement pstmt = conn.prepareStatement(sql);
            pstmt.setString(1,name);
            pstmt.setDouble(2,capacity);
            pstmt.executeUpdate();
        } catch (SQLException e) {
            System.out.println(e.getMessage());
        }
    }
 
    public static void main(String[] args) {
 
        InsertRecords app = new InsertRecords();
        // insert three new rows
        app.insert("Aryan",30000);
        app.insert("Robert",40000);
        app.insert("Jerry",50000);
    }
 
}

现在,记录插入到表中。你可以使用SELECT命令检查出来:


查询记录

从表中选择记录,使用下面的代码。创建一个新的类“SelectRecords”,具有下列数据。

import java.sql.DriverManager;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
 
public class SelectRecords {
 
    private Connection connect() {
        // SQLite connection string
        String url = "jdbc:sqlite:C://sqlite/SSSIT.db";
        Connection conn = null;
        try {
            conn = DriverManager.getConnection(url);
        } catch (SQLException e) {
            System.out.println(e.getMessage());
        }
        return conn;
    }
 

    public void selectAll(){
        String sql = "SELECT * FROM employees";
        
        try {
        	Connection conn = this.connect();
            Statement stmt  = conn.createStatement();
            ResultSet rs    = stmt.executeQuery(sql);
            
            // loop through the result set
            while (rs.next()) {
                System.out.println(rs.getInt("id") +  "\t" + 
                                   rs.getString("name") + "\t" +
                                   rs.getDouble("capacity"));
            }
        } catch (SQLException e) {
            System.out.println(e.getMessage());
        }
    }
    
   
    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {
        SelectRecords app = new SelectRecords();
        app.selectAll();
    }
 
}

输出:

你可以看到,它显示了所有我们插入一次的记录。

注:通过使用相同的过程,你可以更新和删除表和数据库。

赞(1)
未经允许不得转载:srcmini » Java的SQLite使用例子

评论 抢沙发

评论前必须登录!