sqlite相关技术记录
今天使用SQLite来创建一张表的时候发现一个问题 sql语句之间一定要有空格和逗号,不然会报错不能创建表的。 今天也学到了几个关于SQLite的相关类的使用以及DAO和JAVEBEAN技术相结合的使用 记录一些重点代码吧。 首先是SQLiteOpenHelper这个类,这个类是用于管理数据库的创建和版本更新的工具类,其中有2个重要的方法 onCreate()和onUpgrade(),第一个方法用来创建数据库,第二个方法是更新数据库的,也就是开发软件时,版本更新了,就调用这个方法 但是在更新时也要同时再次调用onCreate()这个方法来从新创建数据库(因为数据库中的数据已经改变,就需要重新创建),当然还有一个细节,当集成SQLiteOpenHelper这个类时必须要实现它的构造方法,构造器就是用来创建实例的,这样就可以到其他的类中使用这个类以及调用其方法。 SQLiteOpenHelper还有2个重要的方法: 1,getWritableDatabase()用来创建一张表然后向其中插入数据,关键代码如下 db = dbhelp.getWritableDatabase(); 注:db属于SQLiteDataBase中的对象 2,getReadableDatabase()用来读取数据库中表的信息,然后就可以对表中的数据进行查找,删除等操作了 关键代码如下: db = dbhelp.getReadableDatabase(); userlist.setString("sqlite"); 读取数据的话,肯定也要用到一个类,游标工厂了,也就是Cursor这个类,它有一个query()方法,里面包含的五个参数一般只需要前2个,后面的置为null即可。 这里创建了一个list集合用来保存数据,还有userbean要用null进行实例化,不然不能添加数据(因为没有实例化,就没有分配内存空间,也就不能添加数据了)。 至于SQLiteDatabase这个类一般是和SQLiteOpenHelper结合使用的,它是用来管理数据库的接口,这个类提供了create(),insert(),delete(),查询(Retrieve)、更新(Update)这些方法。 数据库中添加的数据不仅只有文字,还有音频图片等文件,这里我只写存储图片的方法 图片我将其数据类型设置为blob(二进制对象),通过转换将二进制字节码存入缓冲区,然后利用IO流读取缓冲区中的数据,读完后再用BitmapDrawable中的方法将其压缩,最后存入数据表中,代码如下: ByteArrayOutputStream os = new ByteArrayOutputStream(); 以上就是今天所学的一些知识,自己总结的一些,让别人看估计都看不懂 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |