介绍
sqllite是一个小型数据库,不依赖于数据库服务器,操作它可以像操作本地的文本文件一样。在Android中是用来存储数据到本地的,java中可能也会有用到sqllite需要。
详细
sqllite就是一个数据库,操作上和sql server等其他数据库都遵循sun公司推出的接口,所以其他的不多说,直接贴代码吧:
public static void main(String[] args) { // 加载驱动 ResultSet rs = null; // 得到连接 会在你所填写的目录建一个你命名的文件数据库 Connection conn = null; try { Class.forName("org.sqlite.JDBC"); } catch (ClassNotFoundException e) { System.out.println("数据库驱动未找到!"); } try { conn = DriverManager.getConnection("jdbc:sqlite:./zieckey.db", null, null); // 设置自动提交为false conn.setAutoCommit(false); Statement stmt = conn.createStatement(); // 判断表是否存在 ResultSet rsTables = conn.getMetaData().getTables(null, null, "student", null); if (rsTables.next()) { System.out.println("表存在,创建表的事情不要做了"); } else { stmt.executeUpdate("create table student (id text,name text);"); } stmt.executeUpdate("insert into student values (1,'hehe');"); stmt.executeUpdate("insert into student values (2,'xixi');"); stmt.executeUpdate("insert into student values (3,'haha');"); // 提交 conn.commit(); // 得到结果集 rs = stmt.executeQuery("select * from student;"); ResultSetMetaData rsmd = rs.getMetaData(); System.out.println("rsmd = " + rsmd.getTableName(1)); int columnCount = rsmd.getColumnCount(); System.out.println("columnCount = " + columnCount); String cName = rsmd.getColumnLabel(1); String cType = rsmd.getColumnClassName(2); System.out.println("cName = " + cName); System.out.println("cType = " + cType); while (rs.next()) { System.out.println("id = " + rs.getString("id")); System.out.println("name = " + rs.getString("name")); } } catch (SQLException e) { e.printStackTrace(); System.out.println("SQL异常!"); } finally { if (rs != null) { try { rs.close(); rs = null; } catch (SQLException e) { e.printStackTrace(); } } if(conn != null){ try { rs.close(); rs = null; } catch (SQLException e) { e.printStackTrace(); } } } }
这个需要一个sqllite的jdbc驱动。