傻啦吧唧的程序员丶

简单使用SQLite 的增删改查

1.插入

  第一种方式

INSERT INTO COMPANY (ID,NAME,AGE,ADDRESS,SALARY) VALUES (1, 'Paul', 32, 'California', 20000.00 );
INSERT INTO COMPANY VALUES (1, 'Paul', 32, 'California', 20000.00 ); (后面的值必须根据顺序来)

第二种方式
ContentValues contentValues = new ContentValues();
contentValues.put(COLUMN_NAME_ID,id);
contentValues.put(COLUMN_NAME_NAME,name);
contentValues.put(COLUMN_NAME_AGE,age);
contentValues.put(COLUMN_NAME_BIRTHDAY,birthday);
db.insert(TABLE_NAME,null,contentValues);

2.查询

  第一种方式

SELECT column1, column2, columnN FROM table_name;

在这里,column1, column2...是表的字段,他们的值即是您要获取的。如果您想获取所有可用的字段,那么可以使用下面的语法:

SELECT * FROM table_name;

第二种方式
Cursor c = db.query(TABLE_NAME,null,COLUMN_NAME_NAME + " = ?",new String[]{name},null,null,null);
Person person = new Person();
person.setId(c.getInt(0));
person.setName(c.getString(1));
person.setAge(c.getString(2));
person.setBirthday(c.getString(3));

查询所有
List<Person> array = new ArrayList<Person>();
Cursor cursor = db.query(TABLE_NAME,null,null,null,null,null,null);
while (cursor.moveToNext()){
Person p = new Person();
p.setId(cursor.getInt(0));
p.setName(cursor.getString(1));
p.setAge(cursor.getString(2));
p.setBirthday(cursor.getString(3));
array.add(p);
}

3.删除

第一种方式
DELETE FROM table_name WHERE [condition];
删除某一个
DELETE FROM COMPANY WHERE ID = 7
删除全部
DELETE FROM COMPANY;
第二种方式
db.delete(TABLE_NAME,COLUMN_NAME_NAME + " = ?",new String[]{name});

4.更新

第一种方式
UPDATE table_name SET column1 = value1, column2 = value2...., columnN = valueN WHERE [condition];
UPDATE COMPANY SET ADDRESS = 'Texas' WHERE ID = 6;
如果您想修改 table表中的 任意一列的所有值,则不需要使用WHERE语句:
UPDATE COMPANY SET ADDRESS = 'Texas', SALARY = 20000.00;
第二种方式
ContentValues contentValues = new ContentValues();
contentValues.put(COLUMN_NAME_NAME,changeName);
db.update(TABLE_NAME,contentValues,COLUMN_NAME_NAME + " = ?",new String[]{name});

5.Like语句的使用

SQLite 的 LIKE 运算符是用来匹配通配符指定模式的文本值。如果搜索表达式与模式表达式匹配,LIKE 运算符将返回真(true),也就是 1。这里有两个通配符与 LIKE 运算符一起使用:

  • 百分号 (%)

  • 下划线 (_)

百分号(%)代表零个、一个或多个数字或字符。下划线(_)代表一个单一的数字或字符。这些符号可以被组合使用。

WHERE COLUMN LIKE '200%' 查找以 200 开头的任意值
WHERE COLUMN LIKE '%200%' 查找任意位置包含 200 的任意值
WHERE COLUMN LIKE '_00%' 查找第二位和第三位为 00 的任意值
WHERE COLUMN LIKE '2_%_%' 查找以 2 开头,且长度至少为 3 个字符的任意值
WHERE COLUMN LIKE '%2' 查找以 2 结尾的任意值
WHERE COLUMN LIKE '_2%3' 查找第二位为 2,且以 3 结尾的任意值
WHERE COLUMN LIKE '2___3' 查找长度为 5 位数,且以 2 开头以 3 结尾的任意值

posted on 2016-03-21 11:49  傻啦吧唧的程序员丶  阅读(436)  评论(0编辑  收藏  举报

导航