SQLite数据的增删查改

来源:互联网 发布:翻译软件手机版 编辑:程序博客网 时间:2024/05/23 02:19

SQLite语句创建和写入
这种方法的优势和弊端

缺点:无返回值 优势;适应大部分数据库的语法

【打开或者创建数据库】 差不多所有数据库通用
如果数据库存在则打开,不存在则创建

调用方法:openOrCreateDatabase(String name,int mode,DatabaseFactory factory);

String name= "数据库名称";------>建议加上后缀 .db 否则数据库将以无任何后缀的形式进行创建int mode =  权限常量;  ------> 在内部存储的数据库都是使用MODIE_PRIVATE 常量,外部存储随软件开发的性质决定 (大部分Android的SQLite数据库都是在手机内存的)DatabaseFactory factory= 数据库工厂  ------>小型软件开发 设置为null 即可

【获取SQLiteDatabase的对象】
直接从打开数据的时候即可以获取到SQLite的对象 openOrCreateDatabase()返回的就是
一个SQLiteDatabase对象
SQLiteDatabase db=openOrCreateDatabase(name,mode,factory);

【创建数据表】
语法:CREATE TABLE 数据表名 (字段值设计列表)

String sql="CREATE TABLE users(name VARCHAR(5) UNIQUE NOT NULL,age INTEGER(3))"调用SQLiteDarabase对象,执行创建数据表的语法db.execSQL(sql);    

【写入数据】
语法:INSERT INTO user(字段列表) VALUES (字段值)

注:字段列表与字段值一一对应String sql="INSERT INTO users (name,age) VALUES ('小芳',20)"db.exexSQL(sql);  //执行语句

【删除数据】 注:加中括号表示可以写,也可以不写,只是在后面标明了要删除的具体位置或者某行
语法: DELETE FROM 数据表 [WHERE 字段值对]

String sql ="DELETE FROM users"  ----->无WHERE 表示删除该数据表的所有数据String sql ="DELETE FROM users WHERE name='小芳' OR age<20"String sql ="DELETE FROM users WHERE name='小芳' AND age=19"db.execSQL(sql);

【查询数据】 [] 表示可写可不写,WHERE表示附加条件,ORDER BY 表示对查询的数据进行排序
语法:SELECT 字段列表 FROM 数据表名 [WHERE][ORDER BY]

String sql="SELECT name,age FROM users"  查询整张数据表的name和ageString sql="SELECT name FROM users WHERE name='小芳'" 查询数据表中命名为‘小芳’的一列String sql="SELECT name FROM users ORDER BY age" 查询整张表的姓名,并按年龄进行(升序)排序等价于下面的语句(同时也是默认的,也就是说,不写ASC默认是升序排序的)String sql="SELECT name FROM users ORDER BY age ASC"String sql="SELECT name FROM users ORDER BY age DESC,name ASC"查询结果先优先根据age字段进行降序排序如果age相同再根据name进行升序排序db.execSQL(sql)注:String sql="SELECT * FROM users " 表示查询整张数据表的所有数据    ---------------------------------------------    String sql="CREATE TABLE users(name VARCHAR(5),age INTEGER(3))";        String sql="SELECT name,age FROM users" 
0 0
原创粉丝点击