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. 项目文档引子系列目前不对外发布,仅作为博客记录.如学员在实际工作过程中需提前 ...
随机推荐
- [AHOI2014&&JSOI2014][bzoj3876] 支线剧情 [上下界费用流]
题面 传送门 思路 转化模型:给一张有向无环图,每次你可以选择一条路径走,花费的时间为路径上边权的总和,问要使所有边都被走至少一遍(可以重复),至少需要花费多久 走至少一遍,等价于覆盖这条边 也就是说 ...
- 初始化一个Express项目
首先新建一个目录mkdir myblog,在该目录下运行npm init 生成package.json 然后安装express,加--save写入package.json npm i express@ ...
- 如何清除全部的NSUserDefaults储存的数据。
今天做项目遇到,如何清除全部的NSUserDefaults储存的数据. 方法1:找到所有的key然后remove掉 代码: [objc] view plain copy /** * 清除所有的存储本地 ...
- 关于Delphi cxGrid主从表中从表只能编辑第一条记录的问题
在Delphi cxGrid主从表中从表只能编辑第一条记录,这个问题是由于设置主从关联字段错误造成的. 从表DBtableView2的keyfieldnames,DetailKeyFieldNames ...
- PowerDesigner常用快捷键
一般快捷键 F4 打开检查模型窗口,检查模型 F5 如果图窗口内的图改变过大小,恢复为原有大小即正常大小 F6 放大图窗口内的图 F7 缩小图窗口内的图 F8 在图窗口内中查看全部 ...
- ToolTip特效 JavaScript 盗取厦门人才网的特效
原文发布时间为:2009-05-17 -- 来源于本人的百度文章 [由搬家工具导入] 源代码:http://www.xmaspx.com/Services/FileAttachment.ashx?At ...
- c language compile process.
- 乌班图中的ssh服务
SSH服务(TCP端口号22):安全的命令解释器 为客户机提供安全的Shell 环境,用于远程管理 ...
- Codeforces 935D Fafa and Ancient Alphabet
题目链接 题意 给定两个\(n\)位的\(m\)进制数\(s1,s2\),所有出现的\(0\)均可等概率地被其他数字替换,求\(s1\gt s2\)的概率. 思路 从高位到低位,根据每一位上相应的\( ...
- AtCoder Regular Contest 090 F - Number of Digits
题目链接 Description For a positive integer \(n\), let us define \(f(n)\) as the number of digits in bas ...