• java 操作sqllite的数据库


    介绍

       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驱动

  • 相关阅读:
    OOP3(继承中的类作用域/构造函数与拷贝控制/继承与容器)
    OOP2(虚函数/抽象基类/访问控制与继承)
    OOP1(定义基类和派生类)
    拷贝控制3(对象移动)
    拷贝控制2(拷贝控制和资源管理/交换操作/动态内存管理)
    拷贝控制1(拷贝、赋值与销毁)
    动态内存2(动态数组)
    python--numpy模块、spicy模块、 matplotlib模块
    Java--23种设计模式之decorator模式
    Android开发---开发文档翻译
  • 原文地址:https://www.cnblogs.com/Cyning/p/3533804.html
Copyright © 2020-2023  润新知