sqlite 数据库的操作
********创建***********
import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;
import android.database.sqlite.SQLiteDatabase.CursorFactory;
public class DataBaseOpenHelper extends SQLiteOpenHelper {
public static final String DATABASE_NAME = "my.db";
/**
* @param context 上下文
* @param name 数据库的名称
* @param factory 游标工厂 --CursorFactory factory一般情况下是不需要指定的
* @param version 版本 当我们的版本号更新的时候系统会自动调用onCreate(SQLiteDatabase db)这个方法
*
*/
public DataBaseOpenHelper(Context context,int version) {
super(context, DATABASE_NAME, null, version);
}
/**
* 1. 这个方法用于初始化数据库表,表结构的创建
*/
@Override
public void onCreate(SQLiteDatabase db) {
db.execSQL("CREATE TABLE person (personid integer primary key autoincrement, name varchar(20), age integer)");
}
/**
* 当版本号更改的时候会调用这个方法 @Override
*/
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
db.execSQL("DROP TABLE IF EXISTS person");
onCreate(db);
}
}
********操作***********
import java.util.ArrayList;
import java.util.List;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import cn.itcast.domain.Person;
import cn.itcast.sqlite.opendb.DataBaseOpenHelper;
public class DataBaseService {
private DataBaseOpenHelper opendb;
private SQLiteDatabase db ;
public DataBaseService(DataBaseOpenHelper opendb) {
this.opendb = opendb;
db = this.opendb.getReadableDatabase();
}
public void save(Person person) {
db.execSQL("insert into person(name,age) values(?,?)",new Object[]{person.getName(),person.getAge()})
相关文档:
//搜集整理了一下网上的代码.找了半天居然找不到一条插入语句.好郁闷的
//感觉速度还可以.小文件.很多小应用程序在用这个数据库
//SQLite使用办法.直接COPYDLL文件System.Data.SQLite.DLL到应用程序DEBUG目录下。 然后在项目中添加引用,找到这个文件即可
//添加引用
using System;
using System.Collections.Generic;
......
在SQLite on BlackBerry上,JDBC访问数据库,缺省是以UTF-8保存数据到数据库里面的,每个中文通常是3个字节保存到数据库上面的。
例子代码参考:
BlackBerry sample - SQLiteDemo。
注意:在插入中文的时候,请使用Statement.bind指令,在我的测试中,可以很好的保存中文数据。读取的时候只需要使用Result ......
在 .NET 里面使用 SQLite, 我这里使用的wrapper是 System.Data.SQLite,它只需要一个dll,接口符合ADO.Net 2.0的定义,性能也不错,NHibernate用的也是它,目前支持ADO.NET 3.5了,支持集成在 VS2005 和 VS2008里面,而且支持wince,是个亮点
因为符合ADO.NET的规范,所以使用方式,基本和 SqlClient, OleDb等原生的一致
us ......
代码很乱,而且没有用到模板,把html代码跟Python代码混在一起了,而且也没有用到web.py本身提供的数据库操作模块,绝对粗超的代码!
学习了很多东西,首先当然是web.py,然后是sqlite,接下来是time模块——看来也唯有不断的实践,才真正能进步!
说实在的,偶学html到现在这么久,还是半桶水,悲剧了!
01&n ......