SQLite *** 作数据库的步骤

SQLite *** 作数据库的步骤,第1张

概述package com.example.dbdemo;import android.content.Context;import android.database.sqlite.SQLiteDatabase;import android.database.sqlite.SQLiteDatabase.CursorFactory;import android.database.sqlite.


package com.example.dbdemo;import androID.content.Context;import androID.database.sqlite.sqliteDatabase;import androID.database.sqlite.sqliteDatabase.CursorFactory;import androID.database.sqlite.sqliteOpenHelper;import androID.Widget.Toast;public class MyDatabaseHelper extends sqliteOpenHelper {	//创建自定义数据库 *** 作类的两个成员变量,静态常量字符串	public static final String CREATE_BOOK="create table book(ID integer primary key autoincrement,author text,price real,pages integer,name text)";	public static final String CREATE_category="create table category(ID integer primary key autoincrement"+					",category_name text,category_code integer)";	private Context mContext; //上下文对象;		public MyDatabaseHelper(Context context,String name,CursorFactory factory,int version) {		super(context,name,factory,version);		mContext=context;  //给当前上下文对象赋值	}	//1.创建数据库的方法	@OverrIDe	public voID onCreate(sqliteDatabase db) {		//使用db的execsql方法,来执行创建数据表的方法		db.execsql(CREATE_BOOK);		db.execsql(CREATE_category);		Toast.makeText(mContext,"创建数据成功!",Toast.LENGTH_SHORT).show();	}	//更新数据的方法;更新数据内容的方法;因为已经有了数据库,则不会再次创建数据库 ;	@OverrIDe	public voID onUpgrade(sqliteDatabase db,int oldVersion,int newVersion) {		db.execsql("drop table if exists book"); //如果存在,则删除!!!		db.execsql("drop table if exists category");		onCreate(db);	}}

package com.example.dbdemo;import androID.app.Activity;import androID.content.ContentValues;import androID.database.sqlite.sqliteDatabase;import androID.os.Bundle;import androID.vIEw.Menu;import androID.vIEw.VIEw;import androID.vIEw.VIEw.OnClickListener;import androID.Widget.button;import androID.Widget.Toast;public class MainActivity extends Activity {	//1.创建主活动类的成员变量是数据库 *** 作类	private MyDatabaseHelper dbHelper;		@OverrIDe	protected voID onCreate(Bundle savedInstanceState) {		super.onCreate(savedInstanceState);		setContentVIEw(R.layout.activity_main);		//---------------------------在主活动的方法里面来调用写数据的方法;		//如何让调用onUpgrade()方法,使用版本号,即第四个参数		dbHelper=new MyDatabaseHelper(MainActivity.this,"BookStore.db",null,2);		button btnDb=(button)findVIEwByID(R.ID.btnDb);		btnDb.setonClickListener(new OnClickListener(){			@OverrIDe			public voID onClick(VIEw arg0) {								dbHelper.getWritableDatabase();			}		});				//------------------为插入数据,编写相应的代码-----------------		//sqliteDatabase对象,借助这个对象,就可以对数据进行CRUD *** 作!		//sqliteDatabase类提供了一个insert()方法,这个方法专门用于对数据进行添加数据。它接受三个参数,第一个参数是表名,我们希望向哪个表添加数据,这里就传入该表的名字		//第二个参数用于在未指定给某些可为空的列自动赋值NulL,一般我们用不到这个功能;		//第三个参数是一个ContentValues对象,它提供了一系列的put()方法重载,用于向ContentValues中添加数据,只需要将表中的每个列名以及相应的待添加数据传入即可		button btnAddData=(button)findVIEwByID(R.ID.btnAddData);		btnAddData.setonClickListener(new OnClickListener(){			@OverrIDe			public voID onClick(VIEw v) {				sqliteDatabase db=dbHelper.getWritableDatabase(); //返回一个sqliteDatabase对象,可以对sqlite数据库进行 *** 作;				ContentValues values=new ContentValues();				//开始组装第一条数据				values.put("name","魔兽");				values.put("author","张");				values.put("pages",454);				values.put("price",16.96);				long i1=db.insert("Book",values); //插入第一条数据;				values.clear();   //清楚内容值对象里面的数据;				values.put("name","Jquery");				values.put("author","li.sir");				values.put("pages",510);				values.put("price",19.95);				long i2=db.insert("Book",values);   //插入第二条数据;				if(i1!=-1){					Toast.makeText(MainActivity.this,"第一条数据插入成功",Toast.LENGTH_LONG).show();				}				if(i2!=-1){					Toast.makeText(MainActivity.this,Toast.LENGTH_LONG).show();				}			}		});		//针对数据进行更新;		button btnUpdateData=(button)findVIEwByID(R.ID.btnUpData);		btnUpdateData.setonClickListener(new OnClickListener(){			@OverrIDe			public voID onClick(VIEw v) {				sqliteDatabase db=dbHelper.getWritableDatabase();  //获得sqliteDatabase对象;				ContentValues values=new ContentValues(); //获得内容值对象;				values.put("price",188);				int i3=db.update("Book",values,"name=?",new String[]{"魔兽"});				//update(表名 ,值对象,列名,确定原来的哪一行数据				if(i3!=0){					Toast.makeText(MainActivity.this,"数据修改成功",Toast.LENGTH_LONG).show();				}			}		});		//-------------------使用删除按钮,对数据删除------------		button btnDeleteData=(button)findVIEwByID(R.ID.btnDeleteData);		btnDeleteData.setonClickListener(new OnClickListener(){			@OverrIDe			public voID onClick(VIEw v) {				sqliteDatabase db=dbHelper.getWritableDatabase(); //获得sqliteDatabase对象db				int i4=db.delete("Book","pages>?",new String[]{"500"});				//delete(表名,哪个参数,具体值)				Toast.makeText(MainActivity.this,"数据删除成功"+i4,Toast.LENGTH_LONG).show();			}		});	}	@OverrIDe	public boolean onCreateOptionsMenu(Menu menu) {		getMenuInflater().inflate(R.menu.main,menu);		return true;	}}
总结

以上是内存溢出为你收集整理的SQLite *** 作数据库步骤全部内容,希望文章能够帮你解决SQLite *** 作数据库的步骤所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/1166657.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-01
下一篇 2022-06-01

发表评论

登录后才能评论

评论列表(0条)

保存