源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

Android编程之数据库的创建方法详解

  • 时间:2021-12-28 06:43 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:Android编程之数据库的创建方法详解
本文实例讲述了Android编程之数据库的创建方法。分享给大家供大家参考,具体如下: 主java
package com.itheima.createdatabase;
import android.app.Activity;
import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
import android.os.Bundle;
public class MainActivity extends Activity {
  private Context mContext;
  @Override
  protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    mContext = this;
    //创建一个帮助类对象
    MySqliteOpenHelper mySqliteOpenHelper = new MySqliteOpenHelper(mContext);
    //调用getReadableDatabase方法,来初始化数据库的创建
    SQLiteDatabase db = mySqliteOpenHelper.getReadableDatabase();
  }
}

同一目录下创建一个类继承于数据库
package com.itheima.createdatabase;
import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteDatabase.CursorFactory;
import android.database.sqlite.SQLiteOpenHelper;
public class MySqliteOpenHelper extends SQLiteOpenHelper {
  public MySqliteOpenHelper(Context context) {
    //context :上下文  , name:数据库文件的名称  factory:用来创建cursor对象,默认为null
    //version:数据库的版本号,从1开始,如果发生改变,onUpgrade方法将会调用,4.0之后只能升不能将
    super(context, "info.db", null,1);
  }
  //oncreate方法是数据库第一次创建的时候会被调用; 特别适合做表结构的初始化,需要执行sql语句;SQLiteDatabase db可以用来执行sql语句
  @Override
  public void onCreate(SQLiteDatabase db) {
    //通过SQLiteDatabase执行一个创建表的sql语句
    db.execSQL("create table info (_id integer primary key autoincrement,name varchar(20))");
  }
  //onUpgrade数据库版本号发生改变时才会执行; 特别适合做表结构的修改
  @Override
  public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
    //添加一个phone字段
    db.execSQL("alter table info add phone varchar(11)");
  }
}

笔记: 什么情况下我们才用数据库做数据存储? 大量数据结构相同的数据需要存储时。 mysql sqlserver2000  sqlite 嵌入式 轻量级 [b]SqliteOpenHelper[/b] 创建数据库步骤: 1.创建一个类继承SqliteOpenHelper,需要添加一个构造方法,实现两个方法oncreate ,onupgrade 构造方法中的参数介绍: context :上下文   , name:数据库文件的名称    factory:用来创建cursor对象,默认为null version:数据库的版本号,从1开始,如果发生改变,onUpgrade方法将会调用,4.0之后只能升不能降
super(context, "info.db", null,1);

2.创建这个帮助类的一个对象,调用[code]getReadableDatabase()[/code]方法,会帮助我们创建打开一个数据库 3.复写[code]oncreate[/code]和[code]onupgrdate[/code]方法: oncreate方法是数据库第一次创建的时候会被调用;  特别适合做表结构的初始化,需要执行sql语句;SQLiteDatabase db可以用来执行sql语句 onUpgrade数据库版本号发生改变时才会执行; 特别适合做表结构的修改 帮助类对象中的getWritableDatabase 和 getReadableDatabase都可以帮助我们获取一个数据库操作对象SqliteDatabase. [b]区别:[/b] [b]getReadableDatabase:[/b] 先尝试以读写方式打开数据库,如果磁盘空间满了,他会重新尝试以只读方式打开数据库。 [b]getWritableDatabase:[/b] 直接以读写方式打开数据库,如果磁盘空间满了,就直接报错。 更多关于Android相关内容感兴趣的读者可查看本站专题:《[url=http://www.1sucai.cn/Special/848.htm]Android操作SQLite数据库技巧总结[/url]》、《[url=http://www.1sucai.cn/Special/402.htm]Android数据库操作技巧总结[/url]》、《[url=http://www.1sucai.cn/Special/367.htm]Android编程之activity操作技巧总结[/url]》、《[url=http://www.1sucai.cn/Special/325.htm]Android文件操作技巧汇总[/url]》、《[url=http://www.1sucai.cn/Special/410.htm]Android开发入门与进阶教程[/url]》、《[url=http://www.1sucai.cn/Special/423.htm]Android资源操作技巧汇总[/url]》、《[url=http://www.1sucai.cn/Special/375.htm]Android视图View技巧总结[/url]》及《[url=http://www.1sucai.cn/Special/124.htm]Android控件用法总结[/url]》 希望本文所述对大家Android程序设计有所帮助。
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部