安卓开发中Sqlte的学习心得

  • 访问android的关系型数据库SQLite,必须用到SQLiteOpenHelper这样的类。

    如果不用这个类比较麻烦复杂。既然有这样的类,直接用就好了。

    SQLiteOpenHelper是助手类,对数据库的创建和版本管理进行操作的。通过继承类,来复写一些方法,来实现对数据库的操作。

    getReadableDatabase()创建或者打开一个数据库。创建或者打开的数据库是可读的。

    查询数据是读操作。增加、删除、修改是写操作。

    SQLitedatabase是提供管理SQLite数据库的一些方法。如inSert、isOpen、query、update。

    要想对数据库进行操作,必须得到SQLiteDatabase这样类的对象才能对数据库进行操作。如何得到这个对象呢,首先得到一个SQLiteOpenHelper对象,然后用SQLiteOpenHelper对象的getReadableDatabase、getWriteableDatabase来得到一个可读或者可写的数据库来得到一个SQLiteDatabase对象,再用这个对象对数据库进行操作就可以了。

    onCreate(SQLiteDatabase db)、onOpen(SQLiteDatabase db)、onUpgrade(SQLiteDatabase db,int oldVersion,int newVersion)这三个函数是回调函数,当执行某项操作的时候,就会调用这些函数。如当创建数据库、打开数据库、更新数据库的时候,就会调用这三个回调函数。

    创建表结构的操作在onCreate(SWLiteDatabase db)方法中编写

    升级数据库,增加表、修改表名称,可以在onUpgrade(SQLiteDatabase db,int oldVersion,int newVersion)方法中编写

    总结:

    需要操作sqlite数据库的时候,必须有SQLiteOpenHelper这样的一个类的对象,但是由于该类为抽象类,所以必须自己写个类来继承它。继承后,就有2个函数:getReadableDatabase、getWriteableDatabase。这2个对象,都是SQLiteDatabase类的对象。当查询数据库的时候,就需要用getReadableDatabase这样的类,当对数据库进行增、删、改操作的时候,就需要用到getWriteableDatabase这样的类来得到SQLiteDatabase这样一个对象。

    除此之外,还可以复写onCreate、onOpen、onUpgrade。

时间: 2024-11-14 00:47:02

安卓开发中Sqlte的学习心得的相关文章

安卓开发中时间对话框的调用

安卓开发中,经常会使用到时间对话框.通常都是在一个EditText中选择日期.下面我们一起学习下时间对话框的使用方法. 1.首先,自己在对应的XML文件中设置两个控件,一个TextView,一个EditText.在activity中编写对EditText的操作. 2.声明变量(年月日)以及txtTime(EditText控件,用来显示时间)并相应的对其初始化. TextView tvInTime; EditText txtInTime; // 年月日 private int mYear; pri

安卓开发中内存问题分析(一)工具篇

内存泄漏和内存溢出是安卓开发中经常碰到的问题,如何能够快速有效的发现并追踪内存泄漏或者内存溢出的源头,是每个开发者都需要掌握的技巧,今天我给大家带来常见的内存分析工具使用方法,希望对大家今后的开发带来帮助. 使用Eclipse分析应用内存使用情况 具体步骤如下: 1.启动eclipse后,切换到DDMS透视图,并通过Window-ShowView打开Devices视图.Heap视图 2.连接手机或者模拟器后,在DDMS的Devices视图中将会显示手机设备或模拟器的序列号,以及设备中正在运行的部

安卓开发中非常炫的效果集合

文章转自:一点点征服的 http://www.cnblogs.com/ldq2016/p/5217590.html 安卓开发中非常炫的效果集合 这几天开发的时候,想做一些好看而且酷炫的特效,于是又开始从网上收集各种特效资源.下面给大家一些我喜欢的把,附代码,喜欢的看源代码,然后加到自己项目去把!! 一个开源项目网站有很多炫酷效果http://itlanbao.com/codes.aspx#1,0 所有效果Dome下载地址:https://github.com/20994842/A-collect

安卓开发中的重力感应传感器

安卓开发中拥有多种传感器,google提供了11种传感器供应用层使用:加速度.磁力.方向.陀螺仪.光线.压力(返回当前压强).温度.接近(检测物体与手机的距离).重力.线性加速度和旋转矢量.     在使用传感器之前,需要将工程中的类接口到SensorEventListener,接口后会有两个重载方法来进行监听,并取得感应检测Sensor状态.其中onAccuracyChanged()方法在感应检测到Sensor的精密度有变化时被调用,onSensorChanged()方法是在感应检测到Sens

安卓开发中使用Genymotion模拟器

在安卓开发中,运行和调试自己所写的安卓程序需要用到模拟器 在一般情况下 是直接在这创建一个模拟器,但是这种自带的模拟器运行效率不佳,而且启动时间漫长 所以,我们可以换一款安卓模拟器 Genymotion安卓模拟器.详情百度 官网地址:https://www.genymotion.com/ 1.Genymotion下载安装完成 2.在eclipse中配置调用Genymotion 官网对于eclipse中插件的安装方法 要安装Genymotion的Eclipse插件 在Eclipse中,去帮助/安装

安卓开发常见布局方式学习

在安卓开发中我们常用的布局方式有这么几种: 1.LinearLayout ( 线性布局 ) :(里面只可以有一个控件,并且不能设计这个控件的位置,控件会放到左上角) 线性布局分为水平线性和垂直线性二者的属性分别为: android:orientation= " horizontal " android:orientation= "vertical" . 2.RelativeLayout ( 相对布局 ) : (里面可以放多个控件,但是一行只能放一个控件) 附加几类

安卓开发中我们常用的布局方式

在安卓开发中我们常用的布局方式有这么几种: 1.LinearLayout ( 线性布局 ) :(里面只可以有一个控件,并且不能设计这个控件的位置,控件会放到左上角) 线性布局分为水平线性和垂直线性二者的属性分别为: android:orientation= " horizontal " android:orientation= "vertical" . 2.RelativeLayout ( 相对布局 ) : (里面可以放多个控件,但是一行只能放一个控件) 附加几类

安卓开发中的双日期选择控件(可隐藏日,只显示年月)

在安卓开发中,会碰到选开始日期和结束日期的问题.特别是在使用Pad时,如果弹出一个Dialog,能够同时选择开始日期和结束日期,那将是极好的.我在开发中在DatePickerDialog的基础上做了修改,实现了这种Dialog.效果如下: 具体实现方法为: 先新建一个安卓项目DoubleDatePicker,在res/layout文件夹下新建date_picker_dialog.xml,内容如下: 1 <?xml version="1.0" encoding="utf-

安卓开发中遇到耗电量高的问题解决方案

在安卓开发中,遇到bug是可以修复的,通过日志,或者调试各种方法都是可以解决的.但是耗电量高的问题,你又如何解决的呢? 这个问题第一次遇见,会觉得无从下手,没有丝毫的头绪.但问题出现了,必须要硬着头皮去解决了. 首先先检查手机什么最耗电,手机设定->更多->电池,看到了哪些应用耗电的情况.确定耗电的事实. 其次,我们要检查为什么它这么耗电,建议你下个超级终端,这就要有些linux的知识了,运行top -m 5 -t, 显示出按cpu大小列出5个进程列表.可以看到是哪个进程,cpu的使用率高,相