sqlite操作android数据库入门
android 链接数据库初级入门:
1、创建或打开数据库
SQLiteDatabase db= openOrCreateDatabase("first.db3", Activity.MODE_PRIVATE, null);
db.execSQL("create table if not exists user(id integer primary key autoincrement,name varchar(20),password varchar(20))");
openOrCreateDatabase的参数如下:
|
name:
|
数据库的名称 |
|
mode:
|
文件访问方式: |
| factory: |
可选的数据库游标工厂类,当查询(query)被提交时,该对象会被调用来实例化一个游标。默认为null。 |
注:这里创建表格中所用的if not exitsts是为了防止所见表格已存在
2、增加
1 ContentValues values = new ContentValues(); 2 values.put("name", "tom"); 3 values.put("password", "123456"); 4 db.insert("user", null, values);
insert的参数:
|
table:
|
想要插入数据的表名 |
| nullColumnHack: | SQL不允许插入空行,初始化值为空时,这一列将会被显示地赋一个null值 |
| values: | 要插入的值,这里采用ContentValues 存储要插入的值 |
3、删除
db.delete("user", "id=?", new String[] { "1" });
delete的参数:
|
table: |
表名 |
| whereClause: | 可选的where子句,如果其值为null,将会删除所有的行。 |
| whereArgs: | 当在whereClause中包含”?”时,如果whereArgs的值不为null,则这个数组中的值将依次替换whereClause中出现的”?” |
4、修改
ContentValues values = new ContentValues(); values.put("name", "tom"); values.put("password", "55555"); db.update("user", values, "id=?", new String[]{"1"});
update的参数同delete的参数
5、查询
Cursor cursor = db.query("user", new String[] {"_id", "name",
"password" }, null, null, null, null,null);
query的参数:
|
table: |
要查询数据的表名 |
| columns: | 要返回的列的列名数组 |
| selection: | 可选的where子句 ,如果其值为null,将会返回所有的行 |
| selectionArgs: | 当在selection中包含”?”时,如果selectionArgs的值不为null,则这个数组中的值将依次替换selection中出现的”?” |
| groupBy: | 可选的group by子句,如果其值为null,将不会对行进行分组 |
| having: | 可选的having子句,如果其值为null,将会包含所有的分组 |
| orderBy: | 可选的order by子句,如果其值为null,将会使用默认的排序规则 |
| limit: | 可选的limit子句,如果其值为null,将不会包含limit子句 |

浙公网安备 33010602011771号