Android数据库简单操作之创建数据库

来源:互联网 发布:windows装mac双系统 编辑:程序博客网 时间:2024/05/18 00:31

关于SQlite'

 Sqlite是一款轻量级关系数据库,运算速度快(比MysqlPostgreSQ速度都快),占用资源少,只需几百k的内存就足够了,因而特备适合在移动设备上使用,源码完全的开源,

AndroidSQlite嵌入到了系统使得本地持久化的功能有了一次质的飞跃

----------------------------------------------------------------------------------------------------------------------二:创建数据

 Android提供了一个类为SQliteOpenHelper帮助类,借助此类就可以实现对数据库创建于升级,但是SqliteOpenHelper是一个抽象类,要使用的话必须创建一个帮助类继承其,SQLiteOpenHelper有两个抽象方法,为OnCreate()与onUpGrade()我们必须在在自己的帮助类中实现这两个方法,然后分别在两噶方法中实现创建,升级数据库、

创建一个表 ,用来存放数的基本信息: 书名, 作者, 价格

代码如下:

创建一个帮助类继承自SQLiteOPenHelper 

public class MyDatabaseHelper extends SQLiteOpenHelper {

public static final String TABLE_NAME = "book";

public static final String ID = "_id";

public static final String NAME = "name";

public static final String AUTHOR = "author";

public static final String PRICE = "price";

public MyDatabaseHelper(Context context, String name,

CursorFactory factory, int version) {

super(context, name, factory, version);

}

// getReadableDatabase()方法或getWritableDatabase()方法被调用

// onCreate()会被执行,就会完成数据库的创建

@Override

public void onCreate(SQLiteDatabase db) {

db.execSQL("CREATE TABLE " + TABLE_NAME + "(" + ID

" INTEGER PRIMARY KEY AUTOINCREMENT," + NAME

" TEXT NOT NULL, " + AUTHOR + " TEXT NOT NULL," + PRICE

" TEXT NOT NULL )");

}

 

@Override

public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {

 

}

}

在主文件中:通过SQliteOpenHelper的 getWritableDatabase ()方法实现数据库的创建

注意 当第一次执行getWritableDatabase 该方法会检测数据库中是否存在你想要创建的数据库如果不存在就会调用OnCreate()方法创建数据库,如果该数据库已经存在的话就不会重新创建

代码示例:

public class MainActivity extends Activity implements OnClickListener {

private Button bton;

private MyDatabaseHelper databaseHelper;

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);

databaseHelper = new MyDatabaseHelper(this"books.db"null, 1);

bton = (Button) findViewById(R.id.Create);

bton.setOnClickListener(this);

}

@Override

public void onClick(View v) {

switch (v.getId()) {

case R.id.Create:

databaseHelper.getWritableDatabase();

break;

default:

break;

}

}

}

main.xml 文件加一个按钮即可:如下:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"

    xmlns:toolls="http://schemas.android.com/tools"

    android:layout_width="match_parent"

    android:layout_height="match_parent"

    android:orientation="vertical"

    >

  <Button 

      android:id="@+id/Create"

      android:layout_width="fill_parent"

      android:layout_height="wrap_content"

      android:text="Create DataBase"

      />

</LinearLayout>

在模拟器上运行:

 

点击按键后,然后导出数据库,在SQlite3可视化管理工具中进行查看如下:

 

这样就完成了数据库以及空表的创建。这样一个简单地数据库就创建了

《第一次发博不足之处望各位好友能够及时指出,大家共同进步,必有重谢 微笑微笑

 

0 0