JAVA基础应用——使用sqlite3
2015-08-12 18:14
621 查看
1 下载jar包
http://www.sqlite.com.cn/Upfiles/source/sqlitejdbc-v033-nested.tgz把sqlitejdbc-v033-nested.jar 放入项目,添加到Build Path.
注意事项:
路径必须全是小写,不然会报out of memory写操作
static void WriteLog(String txt) { try { // 连接SQLite的JDBC Class.forName("org.sqlite.JDBC"); Connection conn = DriverManager.getConnection("jdbc:sqlite://c:/path/handlelog.db"); Statement stat = conn.createStatement(); Date now = new Date(); SimpleDateFormat shortTime = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); String sql="insert into logs values('" + shortTime.format(now) + "','" + txt +"')"; stat.executeUpdate(sql); // 插入数据 conn.close(); // 结束数据库的连接 } catch (Exception e) { e.printStackTrace(); } }
select
static boolean isInLog(String txt){ try { // 连接SQLite的JDBC Class.forName("org.sqlite.JDBC"); // 建立一个数据库名zieckey.db的连接,如果不存在就在当前目录下创建之 Connection conn = DriverManager.getConnection(""jdbc:sqlite://c:/path/handlelog.db""); Statement stat = conn.createStatement(); ResultSet rs = stat.executeQuery("select * from logs WHERE file_name='" + txt + "'"); // 查询数据 boolean isHas=false; while (rs.next()) { isHas=true; } rs.close(); conn.close(); // 结束数据库的连接 return isHas; } catch (Exception e) { e.printStackTrace(); } return false; }
获取行数量
String sql="SELECT count(*) FROM skip_items WHERE item_number='" + part_number + "'"; ResultSet rs=stat.executeQuery(sql); if(rs.getInt(1)>0){ continue; }
使用事务批量插入数据
Class.forName("org.sqlite.JDBC"); Connection conn=DriverManager.getConnection(properties.getProperty("cache_db")); conn.setAutoCommit(false); PreparedStatement prep = conn.prepareStatement( "insert into BOM_CACHE values (?);"); prep.setString(1, rs.getString("ASSEMBLY_CODE")); prep.addBatch(); prep.setString(1, rs.getString("COMPONENT_CODE")); prep.addBatch(); prep.executeBatch(); conn.commit(); prep.close(); conn.close();
相关文章推荐
- JAVA多线程两个实用的辅助类(CountDownLatch和AtomicBoolean)
- spring MVC中传递的参数对象中包含list的情况
- Java多线程——<七>多线程的异常捕捉
- Eclipse中集成Ant配置 (转)
- java反射机制详解 及 Method.invoke解释
- java动态反射调用方法
- java中如何反射获取一个类
- Java删除ArrayList中的重复元素的2种方法
- Java基础:常见对象
- java SSH网上拍卖平台系统
- MyEclipse 快捷键
- 【leetcode】Palindrome Linked List【java】
- java基础--JavaBean、POJO、DAO、EJB
- Java多线程yield
- java 调用方法引起歧义:The method XXX is ambiguous for the type XX
- Java正则表达式替换所有特殊字符
- 一个经典例子让你彻彻底底理解java回调机制
- Java — 类与对象(Core Java I)
- spring mvc 使用@ResponseBody报错的解决方法
- -Dmaven.multiModuleProjectDirectory system propery is not set.【eclipse使用maven3.3插件进行编译的时候报错,按照里面的修改】