SQLite基本(实例FileOrganizer2013.5.12)
import org.sqlite.JDBC;
Connection conn = null;
Statement stat;
ResultSet rs;
// 连接数据库
void connect() {
try {
// 连接SQLite的JDBC
Class.forName("org.sqlite.JDBC");
// 建立一个数据库名zieckey.db的连接,如果不存在就在当前目录下创建之
conn = DriverManager.getConnection("jdbc:sqlite:test.db");
stat = conn.createStatement();
} catch (Exception e) {
e.printStackTrace();
}
//JOptionPane.showMessageDialog(null,"已连接数据库");
if( null == conn){
JOptionPane.showMessageDialog(null,"连接数据库失败");
System.exit(1);
}
}
// 断开连接
void disconnect() {
try {
// rs.close();
conn.close();// 结束数据库的连接
} catch (SQLException e) {
e.printStackTrace();
}
//JOptionPane.showMessageDialog(null, "已断开数据库");
}
读取元数据和数据
private void showMetaData() {//显示数据表头以测试数据库连接
ResultSetMetaData rsmd; //取得元数据
try {
rs = stat.executeQuery("Select * From test");
rsmd = rs.getMetaData();
int ColumnCount = rsmd.getColumnCount();
for (int j = 1; j <= ColumnCount; j++) {
System.out.println(rsmd.getColumnName(j));
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
private void showDataInTable() {//显示数据
//定义表格的数据模型
DefaultTableModel dtm = (DefaultTableModel) jTable1.getModel();
try {
while (rs.next()) {
Vector newRow = new Vector();
int c = 1, numberOfColumns;
numberOfColumns = rs.getMetaData().getColumnCount();
while (c <= numberOfColumns) {
newRow.addElement(rs.getString(c));
c++;
}
dtm.addRow(newRow);
}
} catch (Exception e) {
e.printStackTrace();
}
}
查询指定行
select * from MAIN.[test] where rowid =10;
删除
String updateSql="delete from test where RecID ='"+(String)jTable1.getValueAt(jTable1.getSelectedRow(),0)+"'";
try {
stat.executeUpdate(updateSql);
showDataInTable();
System.out.println("已delete");
} catch (SQLException ex) {
ex.printStackTrace();
}
更新
int row = jTable1.getSelectedRow();
String updateSql="update test "// + "set Dept='sorry2"
+ "set Dept='"+jTextField2.getText()
+ "', SendID='"+jTextField3.getText()
+ "', Title='"+jTextField4.getText()
+ "', RecDate='"+jTextField5.getText()
+ "', Link='"+jTextField6.getText()
+ "' where RecID ='"+(String)jTable1.getValueAt(row,0)+"'";
try {
stat.executeUpdate(updateSql);
showDataInTable();
System.out.println("已save");
} catch (SQLException ex) {
ex.printStackTrace();
}
插入
String updateSql="insert into test VALUES("
+ "'"+jTextField1.getText()
+ "','"+jTextField2.getText()
+ "','"+jTextField3.getText()
+ "','"+jTextField4.getText()
+ "','"+jTextField5.getText()
+ "','"+jTextField6.getText()
+"')";
try {
stat.executeUpdate(updateSql);
showDataInTable();
}
SQLite基本(实例FileOrganizer2013.5.12)的更多相关文章
- C#操作SQLite方法实例详解
用 C# 访问 SQLite 入门(1) CC++C#SQLiteFirefox 用 C# 访问 SQLite 入门 (1) SQLite 在 VS C# 环境下的开发,网上已经有很多教程.我也是从 ...
- Java-Runoob-高级教程-实例-方法:12. Java 实例 – Enum(枚举)构造函数及方法的使用-um
ylbtech-Java-Runoob-高级教程-实例-方法:12. Java 实例 – Enum(枚举)构造函数及方法的使用 1.返回顶部 1. Java 实例 - Enum(枚举)构造函数及方法的 ...
- Java-Runoob-高级教程-实例-数组:12. Java 实例 – 数组差集
ylbtech-Java-Runoob-高级教程-实例-数组:12. Java 实例 – 数组差集 1.返回顶部 1. Java 实例 - 数组差集 Java 实例 以下实例演示了如何使用 remo ...
- Qt之操作数据库(SQLite)实例
QtSql模块提供了与平台以及数据库种类无关的访问SQL数据库的接口,这个接口由利用Qt的模型视图结构将数据库与用户界面集成的一套类来支持.QSqlDatabase对象象征了数据库的关联.Qt使用驱动 ...
- Java-Runoob-高级教程-实例-字符串:12. Java 实例 - 字符串优化
ylbtech-Java-Runoob-高级教程-实例-字符串:12. Java 实例 - 字符串优化 1.返回顶部 1. Java 实例 - 字符串优化 Java 实例 以下实例演示了通过 Str ...
- 学习SQLite之路(五) C/C++ SQLite开发实例
介绍一种乌班图中使用sqlite的用法,非常简单,下面的例子是在乌班图12.04中实现的: 1,先安装两个东西: sudo apt-get install sqlite sqlite3 sudo ap ...
- SQLite的介绍 操作Sqlite 具体实例
1.SQLite简介 SQLite是一款轻型的数据库,是遵守ACID的关联式数据库管理系统,它的设计目标是嵌入 式的,而且目前已经在很多嵌入式产品中使用了它,它占用资源非常的低,在嵌入式设备中,可能 ...
- android SQLite 使用实例
Android作为眼下主流的移动操作系统,全然符合SQLite占用资源少的优势,故在Android平台上,集成了一个嵌入式关系型数据库-SQLite.假设想要开发 Android 应用程序,须要在 A ...
- 1级搭建类103-Oracle 12c 单实例 FS(12.2.0.1+RHEL 7)公开
项目文档引子系列是根据项目原型,制作的测试实验文档,目的是为了提升项目过程中的实际动手能力,打造精品文档AskScuti. 项目文档引子系列目前不对外发布,仅作为博客记录.如学员在实际工作过程中需提前 ...
随机推荐
- 如何理解显示卡的驱动模块(DDX,DRM,DRI,XVMC)
如何理解显示卡的驱动模块(DDX,DRM,DRI,XVMC) 1)DDX是什么 DDX是X服务器的2D驱动模块,例如via_drv.so. 2D的显示加速,包括xvideo也是由它负责. 它会初始化硬 ...
- 基于kubuntu的C/C++开发环境搭建
基于kubuntu的环境搭建 系统: kubuntu 14.04 中文输入法: SICM ibus fcitx:sougou 中文输入法的安装比较复杂,由于各种的不兼容,可能会出现各种的问题: 终端配 ...
- SQL中GETDATE()一些操作
Sql Server 中一个非常强大的日期格式化函数Select CONVERT(varchar(100), GETDATE(), 0): 05 16 2006 10:57AMSelect CONVE ...
- VMWare VMNet 8 的配置使用
网上有很多讲解VMWare网络原理的文章,我在这里就不在赘述,有兴趣的朋友可以自己搜 本章主要介绍下我们使用VM最常用的两种网络模式,VMNet 0 和 VMNet 8 本文均为原创,如需转载请标明, ...
- POJ1692 Crossed Matchings
Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 2738 Accepted: 1777 Description The ...
- angular 右击事件的写法
.directive('ngRightClick', function ($parse){ return function (scope, element, attrs){ var fn = $par ...
- 百度云中有关IE浏览器的源码
<!--[if lt IE 9]> <div class="topbar">百度云控制台不支持当前所使用的浏览器,推荐安装 <a href=&qu ...
- python-rtslib 模块
Python library for configuring the Linux kernel-based multiprotocol SCSI target (LIO) A Python objec ...
- 无法启动Visual Studio的localhost web服务器,端口"xxxx"已被使用
解决方法:项目属性-Web里面有web服务器端口的设置,换个端口即可.项目属性->web->服务器,不要选择“自动分配端口”,选择“使用指定端口”,后面输入一个端口号
- Codeforces 782B The Meeting Place Cannot Be Changed(二分答案)
题目链接 The Meeting Place Cannot Be Changed 二分答案即可. check的时候先算出每个点可到达的范围的区间,然后求并集.判断一下是否满足l <= r就好了. ...