sqlite 的基本操作以及数据库查询语句的基本格式

前端之家收集整理的这篇文章主要介绍了sqlite 的基本操作以及数据库查询语句的基本格式前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
  1. // 在sqlite中创建表的语句
  2. //创建表sql语句
  3. Stringstu_table="createtableusertable(_idintegerprimarykeyautoincrement,snametext,snumbertext)";
    1. //执行sql语句
    2. db.execsql(stu_table);

在Android中查询数据是通过Cursor类来实现的,当我们使用sqliteDatabase.query()方法时,会得到一个Cursor对象,Cursor指向的就是每一条数据。它提供了很多有关查询方法,具体方法如下:

public Cursor query(String table,String[] columns,String selection,String[] selectionArgs,String groupBy,String having,String orderBy,String limit);

各个参数的意义说明:

①table:表名称

②columns:列名称数组

③selection:条件字句,相当于where

④selectionArgs:条件字句,参数数组

⑤groupBy:分组列

⑥having:分组条件

⑦orderBy:排序列

⑧limit:分页查询限制

⑨Cursor:返回值,相当于结果集ResultSet

Cursor是一个游标接口,提供了遍历查询结果的方法,如移动指针方法move(),获得列值方法getString()等.

Cursor游标常用方法

方法名称

方法描述

getCount()

获得总的数据项数

isFirst()

判断是否第一条记录

isLast()

判断是否最后一条记录

moveToFirst()

移动到第一条记录

moveToLast()

移动到最后一条记录

move(int offset)

移动到指定记录

moveToNext()

移动到下一条记录

moveToPrevIoUs()

移动到上一条记录

getColumnIndexOrThrow(String columnName)

根据列名称获得列索引

getInt(int columnIndex)

获得指定列索引的int类型值

getString(int columnIndex)

获得指定列缩影的String类型值

下面就是用Cursor来查询数据库中的数据,具体代码如下:

 
 
  1. @H_404_200@privatevoidquery(sqliteDatabasedb)
  2. @H_404_200@{
  3. @H_404_200@
  4. @H_404_200@//查询获得游标 @H_404_200@
  5. @H_404_200@Cursorcursor=db.query("usertable"@H_404_200@,null@H_404_200@,153)">null@H_404_200@);
  6. @H_404_200@
  7. @H_404_200@//判断游标是否为空 @H_404_200@
  8. @H_404_200@if@H_404_200@(cursor.moveToFirst(){
  9. @H_404_200@
  10. @H_404_200@//遍历游标 @H_404_200@
  11. @H_404_200@for@H_404_200@(int@H_404_200@i=0@H_404_200@;i<cursor.getCount();i++){
  12. @H_404_200@
  13. @H_404_200@cursor.move(i);
  14. @H_404_200@
  15. @H_404_200@//获得ID @H_404_200@
  16. @H_404_200@int@H_404_200@id=cursor.getInt(0@H_404_200@);
  17. @H_404_200@
  18. @H_404_200@//获得用户名 @H_404_200@
  19. @H_404_200@Stringusername=cursor.getString(1@H_404_200@);
  20. @H_404_200@
  21. @H_404_200@//获得密码 @H_404_200@
  22. @H_404_200@Stringpassword=cursor.getString(2@H_404_200@);
  23. @H_404_200@
  24. @H_404_200@//输出用户信息 @H_404_200@
  25. @H_404_200@System.out.println(id+":"@H_404_200@+sname+":"@H_404_200@+snumber);
  26. @H_404_200@}
  27. @H_404_200@}
  28. @H_404_200@}


sql中,select语句的基本格式如下:



select [all distinct] select_list
from table_list/view_list
[where conditions]
[group by group_list]
[having conditions]
[order by order_list]


下面对select语句的语法进行一下分析:


第一行关键字select后的select_list列出了所选择列的名称,在检索后系统将列出符合条件的列的数据。select关键字之后可选的关键字all表示将显示所有检索到的数据(包括重复的数据),distince表示不在结果中显示重复数据。


第二行关键字from之后,指定要进行检索的表的名称table_list或视图的名称view_list。from后面可以是一张表,也可以是多张表。


第三行关键字where之后,可以指定检索的条件,使select语句按照指定的检索条件在表中检索数据。要注意检索条件可以来源于一张表,也可以来源于多张表。


第四行关键字group by指定如何对检索到的数据进行分组,使显示结果按照用户的需要分好组,产生可读性更好的结果。


第五行关键字having子句可以看成用于组的where子句。having子句用来限制组,就像排好序,产生可读性更好的结果。


最基本的select语句中一般包含前三行,后三行是为了更好地显示查询的结果,使用后面三行可以清晰、直观地显示查询结果。

猜你在找的Sqlite相关文章