android sqlit数据库升级,添加字段

看了网上的许多关于数据库升级,字段属性的增加方面的资料,了解到:

  其实数据库升级有俩个靠谱的方法,(1)

 db.execSQL("ALTER TABLE test ADD COLUMN age");
  (2)
 db.beginTransaction();
	            db.execSQL("ALTER TABLE test RENAME TO _Test");
	            db.execSQL("CREATE TABLE test(id integer primary key autoincrement , PassWord VARCHAR(20) NOT NULL,"
	                    + " UserName VARCHAR(32) NOT NULL , Age VARCHAR(16) NOT NULL)");
	            db.execSQL("INSERT INTO test SELECT id, " + str + str
	                    + ", name, age FROM _Test");
	            db.setTransactionSuccessful();
	            db.endTransaction();

因为android中自带的数据库是通过一个SqliteOpenHelper 类来进行使用的,在第一次调用的时候执行onCreate(),在其中进行数据库表的创建
  当数据库当前版本小于新数据库版本的时候会调用public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {}
在这里边可以进行数据库的升级。
  方法一就是通过给表增加一个新的字段;
  方法二就是通过修改当前数据库表的名称,作为临时表,在创建一张数据库表来插入临时表中的数据,这样就实现了数据的升级。
下载Demo:
点击打开链接
时间: 2024-10-01 08:08:54

android sqlit数据库升级,添加字段的相关文章

要做一个对数据库进行添加字段和表的向导系统,我应该怎么做。。。

问题描述 如题,好迷茫,求助...我首先应该怎么做...用winfrom做 解决方案 解决方案二:如果你只能罗列一些高大上的名词而说不出这个向导的任何具体功能,那么当然会很迷茫解决方案三:你先看看数据库客户端的可视化界面是如何做的,然后根据它去想你的向导应该有什么功能先sqlserver数据库就看查询分析器好了oracle数据库可以看看plsql是怎么干的然后遇到具体的问题你再问解决方案四:我现在都不是很清楚,只知道要求是要对数据库能进行添加字段和表.之前一直在写数据字典,突然给一个这样的任务,

android SQLite数据库存储数据

简介 SQLite是轻量级嵌入式数据库引擎,它支持 SQL 语言,并且只利用很少的内存就有很好的性能.Android 集成了 SQLite 数据库 Android 在运行时(run-time)集成了 SQLite,所以每个 Android 应用程序都可以使用 SQLite 数据库. 对于熟悉 SQL 的开发人员来时,在 Android 开发中使用 SQLite 相当简单.但是,由于 JDBC 会消耗太多的系统资源,所以 JDBC 对于手机这种内存受限设备来说并不合适.因此,Android 提供了

PHP操作数据库 动态创建字段

PHP操作数据库时自动创建字段,如下代码: <html>  <head>  <meta http-equiv="Content-Type" content="text/html; charset=gb2312" />  <title>动态创建字段 - www.cxybl.com</title>  <style type="text/css">  <!--  .STYLE

在android settings.db数据库中添加一项新的设置

  Settings数据存放在com.android.providers.settings/databases/settings.db 中 数据库中数据的默认数据在frameworks/base/packages/SettingsProvider/res/values/defaults.xml中定义,如果要在数据库中添加一个新的字段,则可用如下步骤: 1.在defaults.xml中为新加的数据定义一个默认值(当然也可在代码中直接给定) 2.在frameworks/base/packages/S

paip.解决 数据库mysql增加列 字段很慢添加字段很慢

paip.解决 数据库mysql增加列 字段很慢添加字段很慢 环境如下: mysql5.6 数据仅仅3w alter table xxx add column yyy int default 0; 添加字段很慢,好几份中都没有好.. 原因以及解决 [SQL] alter table grejx_def add column flag12 int default 0; 受影响的行: 0 不是那种lock–copoy–rewrite的方式.effeic row sh 0 ,为甚还是这么慢的是?? O

Android创建或升级数据库时执行的语句

  Android创建或升级数据库时执行的语句,如果是创建或升级数据库,请使用带List参数的构造方法,带SQL语句的构造方法将在数据库创建或升级时执行.

jsp实现添加视频文件到oracle数据库的blob字段

问题描述 jsp实现添加视频文件到oracle数据库的blob字段,求实现方法 解决方案 解决方案二:视频流文件转换成byte数组解决方案三:你先获取视频流,然后自己封装一把持久化到blob解决方案四:参考下吧:importjava.io.BufferedInputStream;importjava.io.FileInputStream;importjava.io.PrintStream;importjava.sql.Connection;importjava.sql.DriverManager

基于Android SQLite的升级详解_Android

做Android应用,不可避免的会与SQLite打交道.随着应用的不断升级,原有的数据库结构可能已经不再适应新的功能,这时候,就需要对SQLite数据库的结构进行升级了. SQLite提供了ALTER TABLE命令,允许用户重命名或添加新的字段到已有表中,但是不能从表中删除字段. 并且只能在表的末尾添加字段,比如,为 Subscription添加两个字段: 复制代码 代码如下: ALTER TABLE Subscription ADD COLUMN Activation BLOB;ALTER

Android SQLite数据库彻底掌握数据存储_Android

SQLite最大的特点是你可以把各种类型的数据保存到任何字段中,而不用关心字段声明的数据类型是什么. 例如:可以在Integer类型的字段中存放字符串,或者在布尔型字段中存放浮点数,或者在字符型字段中存放日期型值.  但有一种情况例外:定义为INTEGER PRIMARY KEY的字段只能存储64位整数, 当向这种字段保存除整数以外的数据时,将会产生错误. 另外, SQLite 在解析CREATE TABLE 语句时,会忽略 CREATE TABLE 语句中跟在字段名后面的数据类型信息,如下面语