SQLite基本(实例FileOrganizer2013.5.12)
2024-08-27 23:48:58
工具用 SQLite Dev
数据类型:
1.NULL:空值。
2.INTEGER:带符号的整型,具体取决有存入数字的范围大小。
3.REAL:浮点数字,存储为8-byte IEEE浮点数。
4.TEXT:字符串文本。
5.BLOB:二进制对象。
=======================
添加 sqlite-jdbc-3.7.2.jar
连接
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();
}
最新文章
- iOS阶段学习第13天笔记(多态)
- AndroidStudio开发出现Warning:Gradle version 2.10 is required. Current version is 2.8. If u
- MVC Actionlink 参数说明
- GCC 4.8.2 编译安装
- mysql之触发器before和after的区别
- Barcode記錄
- Python socket 客户端和服务器端
- 学习javascript基础知识系列第二节 - this用法
- windows cmd: 打开windows系统程序或服务的常见命令
- Andy的生活
- win10 uwp 自定义控件初始化
- go调查内存泄漏
- ubuntu18.04微信小程序学习笔记
- vue-fetch
- 连接postgres特别消耗cpu资源而引发的PostgreSQL性能优化考虑
- JAVA消息服务JMS规范及原理详解
- G - Rabbit and Grass
- caffe的model参数解析numpy多维数组的存取
- UGUI中Event Trigger的基本用法
- jquery遍历table的tr获取td的值
热门文章
- bzoj2338数矩形(rectangle)
- windows下Call to undefined function curl_init() error问题
- Mysql 数据库备份工具 xtrabackup
- gradle ofbiz 16 开发环境搭建
- BZOJ 1497: [NOI2006]最大获利
- VijosP1303 导弹拦截
- datatable导出到Word / Excel / PDF / HTML .NET
- C#中Hashtable的用法 转
- split一些分开一些特殊字符
- MMU介绍【转】