SQLite SQLite,是一款輕型的資料庫,是遵守ACID的關係型資料庫管理系統,它包含在一個相對小的C庫中。它是D.RichardHipp建立的公有領域項目。它的設計目標是嵌入式的,而且目前已經在很多嵌入式產品中使用了它,它占用資源非常的低,在嵌入式設備中,可能只需要幾百K的記憶體就夠了。它能夠 ...
SQLite
SQLite,是一款輕型的資料庫,是遵守ACID的關係型資料庫管理系統,它包含在一個相對小的C庫中。它是D.RichardHipp建立的公有領域項目。它的設計目標是嵌入式的,而且目前已經在很多嵌入式產品中使用了它,它占用資源非常的低,在嵌入式設備中,可能只需要幾百K的記憶體就夠了。它能夠支持Windows/Linux/Unix等等主流的操作系統,同時能夠跟很多程式語言相結合,比如 Tcl、C#、PHP、Java等,還有ODBC介面,同樣比起Mysql、PostgreSQL這兩款開源的世界著名資料庫管理系統來講,它的處理速度比他們都快。SQLite第一個Alpha版本誕生於2000年5月。 至2015年已經有15個年頭,SQLite也迎來了一個版本 SQLite 3已經發佈。
功能特性
1. ACID事務
2. 零配置 – 無需安裝和管理配置
3.儲存在單一磁碟文件中的一個完整的資料庫
4.資料庫文件可以在不同位元組順序的機器間自由的共用
5.支持資料庫大小至2TB
6. 足夠小, 大致13萬行C代碼, 4.43M
7. 比一些流行的資料庫在大部分普通資料庫操作要快
8. 簡單, 輕鬆的API
9. 包含TCL綁定, 同時通過Wrapper支持其他語言的綁定
10. 良好註釋的源代碼, 並且有著90%以上的測試覆蓋率
11. 獨立: 沒有額外依賴
12. 源碼完全的開源, 你可以用於任何用途, 包括出售它
13. 支持多種開發語言,C, C++, PHP, Perl, Java, C#,Python, Ruby等
SQLite雖然很小巧,但是支持的SQL語句不會遜色於其他開源資料庫,它支持的大多數的SQL語句
用Java操作SQLite資料庫
Java在操作sqlite資料庫,需要先導入sqlite的jar包sqlite-jdbc-3.7.2.jar
- 先創建一個文件夾,將jar包放入其中,一般取名為lib;
- 右擊jar包出現點擊build path——>點擊add to build path;這樣就完成了jar包導入
代碼演示:
1 private static String Drivde="org.sqlite.JDBC"; 2 public static void main(String[] args) { 3 // TODO Auto-generated method stub 4 try { 5 Class.forName(Drivde);// 載入驅動,連接sqlite的jdbc 6 Connection connection=DriverManager.getConnection("jdbc:sqlite:db/zhou.db");//連接資料庫zhou.db,不存在則創建 7 Statement statement=connection.createStatement(); //創建連接對象,是Java的一個操作資料庫的重要介面 8 String sql="create table tables(name varchar(20),pwd varchar(20))"; 9 statement.executeUpdate("drop table if exists tables");//判斷是否有表tables的存在。有則刪除 10 statement.executeUpdate(sql); //創建資料庫 11 statement.executeUpdate("insert into tables values('zhou','156546')");//向資料庫中插入數據 12 ResultSet rSet=statement.executeQuery("select*from tables");//搜索資料庫,將搜索的放入數據集ResultSet中 13 while (rSet.next()) { //遍歷這個數據集 14 System.out.println("姓名:"+rSet.getString(1));//依次輸出 也可以這樣寫 rSet.getString(“name”) 15 System.out.println("密碼:"+rSet.getString("pwd")); 16 } 17 rSet.close();//關閉數據集 18 connection.close();//關閉資料庫連接 19 } catch (Exception e) { 20 // TODO Auto-generated catch block 21 e.printStackTrace(); 22 } 23 }