码迷,mamicode.com
首页 > 数据库 > 详细

sqlite数据库的初步使用

时间:2016-05-25 13:15:33      阅读:228      评论:0      收藏:0      [点我收藏+]

标签:

查看文档,查看

Android文档查sqliteopenhelper

技术分享

上下文创建数据库,onCreate创建表,w3c标准,W3cschool:查询sql的语法这些

技术分享

实际写法

String sql = "create table persons(_id名称 integer类型 primary key主键 autoincrement自动增长,name text)";

db.execSQL("insert into persons(name) values(‘鸡哥‘)");

技术分享

在activity里面获取实例

技术分享

然后在layout里面添加按钮,进行操作

技术分享

 

 

插入数据insert

  1. 先获取可写的数据库SQLiteDatabase db = helper.getWritableDatabase();

  2. 判断数据库是否打开if (db.isOpen())

  3. 执行sql语句,然后关闭数据库db.execSQL("insert into persons(name) values(‘小鸡哥‘)");    db.close();

技术分享

// 查询

  publicvoid query(View v) {

     SQLiteDatabase db = helper.getReadableDatabase();

     if (db.isOpen()) {

       // 查询获取游标(ResultSet是一样的只是名字不同)

       Cursor cursor = db.rawQuery("select * from persons", null);

       // 迭代游标

       while (cursor.moveToNext()) {

         // 获取数据

         // int _id = cursor.getInt(0);

         // cursor.getColumnIndex("_id") 获取_idcursor里面的下标

         int _id = cursor.getInt(cursor.getColumnIndex("_id"));

         String name = cursor.getString(1);

         Log.i(TAG, "_id:" + _id + ",name:" + name);

       }

       cursor.close();// 关闭游标

       db.close();

     }

 

  }

技术分享

// 更新

  publicvoid update(View v) {

     // 获取可写的数据库

     SQLiteDatabase db = helper.getWritableDatabase();

     // 判断数据库是否打开

     if (db.isOpen()) {

       // 执行sql

       db.execSQL("update persons set name =? where _id = ?",

            new Object[] { "小覃", 1 });

       // 关闭数据库

       db.close();

     }

 

  }

 

 

技术分享                                                                     // 删除

  publicvoid delete(View v) {

     // 获取可写的数据库

     SQLiteDatabase db = helper.getWritableDatabase();

     // 判断数据库是否打开

     if (db.isOpen()) {

       // 执行sql

       db.execSQL("delete from persons where _id = ?", new Object[] { 1 });

       // 关闭数据库

       db.close();

     }

  }

技术分享             

总结:

增、删、改

1.    先获取SQLiteOpenHelper数据的帮助类

private SQLiteOpenHelper helper = MySqliteOpenHelper.getIntance(this);

2.    获取数据库的可写权限

SQLiteDatabase db = helper.getWritableDatabase();

3.    判断是否打开数据库

if(db.isOpen())

4.执行sql

db.execSQL("insert into persons(name) values(‘小鸡哥‘)");

4.关闭数据库

db.close();关闭数据库

 

查询操作

1. 先获取SQLiteOpenHelper数据的帮助类

private SQLiteOpenHelper helper = MySqliteOpenHelper.getIntance(this);

 

2.获取数据库的可读权限

SQLiteDatabase db =helper.getReadableDatabase();

3.判断是否打开数据库

if(db.isOpen()){

4.查询  获取游标(ResultSet是一样的只是名字不同)

Cursor cursor = db.rawQuery("select * from persons", null);

5.迭代游标

while(cursor.moveToNext()){

  //获取数据

// int _id = cursor.getInt(0);

  //cursor.getColumnIndex("_id") 获取_idcursor里面的下标

int _id = cursor.getInt(cursor.getColumnIndex("_id"));

String name = cursor.getString(1);

Log.i(TAG, "_id:"+_id+",name:"+name);

}

cursor.close();//关闭游标

db.close();

 

(掌握)利用sql语句对数据库增删改查

SQLite可以解析大部分标准SQL语句,如:

查询语句:select * from 表名 where 条件子句 group by 分组字句 having ... order by 排序子句

如:select * from person

        select * from person order by id desc

        select name from person group by name having count(*)>1

分页SQLmysql类似,下面SQL语句获取5条记录,跳过前面3条记录

select * from Account limit 5 offset 3 或者 select * from Account limit 3,5

插入语句:insert into 表名(字段列表) values(值列表)。如: insert into person(name, age) values(‘传智’,3)

更新语句:update 表名 set 字段名= where 条件子句。如:update person set name=‘传智‘ where _id=10

删除语句:delete from 表名 where 条件子句。如:delete from person  where _id=10

 

字段名就是键的意思,字段列表就是好多键的集合

 

 

 

 

 

 

 

 

 

 

// 更新

  publicvoid update(View v) {

     // 获取可写的数据库

     SQLiteDatabase db = helper.getWritableDatabase();

     // 判断数据库是否打开

     if (db.isOpen()) {

       // 执行sql

       db.execSQL("update persons set name =? where _id = ?",

            new Object[] { "小覃", 1 });

       // 关闭数据库

       db.close();

     }

  }// 更新

  publicvoid update(View v) {

     // 获取可写的数据库

     SQLiteDatabase db = helper.getWritableDatabase();

     // 判断数据库是否打开

     if (db.isOpen()) {

       // 执行sql

       db.execSQL("update persons set name =? where _id = ?",

            new Object[] { "小覃", 1 });

       // 关闭数据库

       db.close();

     }

  }// 查询

  publicvoid query(View v) {

     SQLiteDatabase db = helper.getReadableDatabase();

     if (db.isOpen()) {

       // 查询获取游标(ResultSet是一样的只是名字不同)

       Cursor cursor = db.rawQuery("select * from persons", null);

       // 迭代游标

       while (cursor.moveToNext()) {

         // 获取数据

         // int _id = cursor.getInt(0);

         // cursor.getColumnIndex("_id") 获取_idcursor里面的下标

         int _id = cursor.getInt(cursor.getColumnIndex("_id"));

         String name = cursor.getString(1);

         Log.i(TAG, "_id:" + _id + ",name:" + name);

       }

       cursor.close();// 关闭游标

       db.close();

     }

  }

sqlite数据库的初步使用

标签:

原文地址:http://www.cnblogs.com/xyyz/p/5526560.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!