package zhou.demo.sql; import android.content.Context; import android.database.sqlite.SQLiteDatabase; import android.database.sqlite.SQLiteDatabase.CursorFactory; import android.database.sqlite.SQLiteOpenHelper; /** * 提供的功能 * 1:getReadableDatabase(),gerWritableDatabase()可以获取SQLiteDatabase对象,通过该对象进行相关操作 * 2:提供onCreate()和onUpgrade两个回调函数,允许我们在创建和升级数据库时,进行 * @author Administrator * */ public class DatabaseHelper extends SQLiteOpenHelper{ private static final int VERSION = 1; /** * 该函数为继承SQLiteOpenHelper必须有的一个函数 * @param context * @param name * @param factory * @param version */ public DatabaseHelper(Context context, String name, CursorFactory factory, int version) { super(context, name, factory, version); } public DatabaseHelper(Context context, String name){ this(context,name,VERSION); } public DatabaseHelper(Context context, String name, int version){ this(context,name,null,version); } public void onCreate(SQLiteDatabase db) { System.out.println("数据库已经创建"); db.execSQL("create table user(id int,name varchar(20))"); } public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { System.out.println("数据库已经更新"); } }
操作数据库必须继承SQLiteOpenHelper不然会很麻烦,
package zhou.demo; import zhou.demo.sql.DatabaseHelper; import android.app.Activity; import android.content.ContentValues; import android.database.Cursor; import android.database.sqlite.SQLiteDatabase; import android.os.Bundle; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; public class SQLiteDemo extends Activity { private Button createButton; @SuppressWarnings("unused") private Button updateButton; private Button insertButton; private Button updateRecordButton; private Button queryButton; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); //进行控件的关联 createButton = (Button)this.findViewById(R.id.button1); updateButton = (Button)this.findViewById(R.id.button4); insertButton = (Button)this.findViewById(R.id.button3); updateRecordButton = (Button)this.findViewById(R.id.button2); queryButton = (Button)this.findViewById(R.id.button5); //进行操作的关联 createButton.setOnClickListener(new OnClickListener(){ @SuppressWarnings("unused") public void onClick(View v) { //创建数据库对象 DatabaseHelper dbHelper = new DatabaseHelper(SQLiteDemo.this,"zhou_table"); //调用才会真正的创建数据库 SQLiteDatabase db = dbHelper.getWritableDatabase(); } }); //更新数据库的版本 updateRecordButton.setOnClickListener(new OnClickListener(){ @SuppressWarnings("unused") @Override public void onClick(View v) { DatabaseHelper dbHelper = new DatabaseHelper(SQLiteDemo.this,"zhou_table",2); SQLiteDatabase db = dbHelper.getReadableDatabase(); } }); //插入监听 insertButton.setOnClickListener(new OnClickListener(){ @Override public void onClick(View v) { // TODO Auto-generated method stub ContentValues values = new ContentValues(); values.put("id", 123); values.put("name", "zhouzhou"); DatabaseHelper dbHelper = new DatabaseHelper(SQLiteDemo.this,"zhou_table"); SQLiteDatabase db = dbHelper.getWritableDatabase(); db.insert("zhou_table", null, values); } }); //更新数据超早 updateRecordButton.setOnClickListener(new OnClickListener(){ public void onClick(View v) { DatabaseHelper dbHelper = new DatabaseHelper(SQLiteDemo.this,"zhou_table"); SQLiteDatabase db = dbHelper.getReadableDatabase(); ContentValues values = new ContentValues(); values.put("name", "周利军"); //把String数组的一个参数传给id(值值相互对应) db.update("zhou_table", values, "id=?", new String[]{"1"}); } }); //查询 queryButton.setOnClickListener(new OnClickListener(){ @Override public void onClick(View v) { // TODO Auto-generated method stub DatabaseHelper dbHelper = new DatabaseHelper(SQLiteDemo.this,"zhou_table"); SQLiteDatabase db = dbHelper.getReadableDatabase(); Cursor cursor = db.query("zhou_table", new String[]{"id","name"}, "id=?", new String[]{"1",""}, null, null, null); while(cursor.moveToNext()){ String name = cursor.getString(cursor.getColumnIndex("name")); System.out.println("查到的---->>>" + name); } } }); } }
实现对数据库的操作必须做到这两步:
//创建数据库对象
DatabaseHelper dbHelper = new DatabaseHelper(SQLiteDemo.this,"zhou_table");
//调用才会真正的创建数据库
SQLiteDatabase db = dbHelper.getWritableDatabase();
发表评论
-
Android临时数据缓存方法
2011-07-22 22:58 1968学习Android的朋友欢迎加入:群 59324839(QQ) ... -
ContentProvider内容提供者
2011-07-22 22:58 1292学习Android的朋友欢迎加入:群 59324839(Q ... -
android网络
2011-07-22 22:57 1070学习Android的朋友欢迎加入:群 59324839(Q ... -
SQLite数据库
2011-07-22 22:55 841学习Android的朋友欢迎加入:群 59324839(QQ) ... -
Android Xml解析
2011-07-22 22:53 928学习Android的朋友欢迎加入:群 59324839(Q ... -
Android SharedPreferences
2011-07-22 22:53 1043学习Android的朋友欢迎加入:群 59324839(Q ... -
Android XMl写入
2011-07-22 22:51 1126学习Android的朋友欢迎加入:群 59324839(Q ... -
Android 权限配置
2011-07-22 22:51 1448学习Android的朋友欢迎加入:群 59324839(Q ... -
Android 文件操作
2011-07-22 22:45 891学习Android的朋友欢迎加入:群 59324839(QQ) ... -
Android Dialog的使用
2011-07-22 22:44 1021学习Android的朋友欢迎加入:群 59324839(QQ) ... -
android 技术讨论群(QQ)
2011-07-04 22:18 412android 学习群; 可供广大群从参加! 初学者欢 ... -
SQL判断一个表在系统中是否存在
2011-07-03 18:49 1574/** * 判断某张表是否存在 * @ ... -
android 对话框应用
2011-06-28 00:21 894啥都别说了,看效果吧! new AlertDialog ... -
ContentProvider
2011-06-27 21:13 3458在 Android中,对于数据的存贮,有几种方式,有文件方式 ... -
android 权限大全
2011-06-14 00:19 882java.net.SocketException: Perm ... -
android GUI线程安全
2011-06-11 18:28 1289Activity:运行于主线程。因Android的GUI是 ... -
android Intent和菜单的使用
2011-06-11 01:55 874首先我们需要知道Intent这个东西是用来干什么的: ... -
android 下载程序
2011-06-10 00:34 1047HttpDownloader 文件: package zho ... -
android Handler and progress
2011-06-10 00:31 812package zhou.demo; import andr ... -
android Handler使用
2011-06-10 00:31 898package zhou.demo; import andr ...
相关推荐
android sqlite 使用详解 带源码讲解
Android Sqlite使用详解,增删改查详细解析
Android SQLite使用的三个demo
android sqlite使用demo 代码主要包括sqlite使用中表的建立,表的升级,对于表的操作,增删改查等
android sqlite的使用方法
本程序是一个SQLite的规范使用示例,程序涉及到: SQLite 增、删、改、查、SQL版本更新,ListView创建条目生成,单个条目点击事件处理,程序中通过Junit来实现单元测试。
一个简单的Android SQLite ORM框架不想花资源分的同学可以上我的github主页下载:https://github.com/chenyihan/Simple-SQLite-ORM-Android,因为要传到github,所以代码中的注释和doc文档都是英文的,对自己英文不...
Android Sqlite使用demo
Android 数据库SQLite 详解,简单学好SQLite
在android 中使用sqlite ,如何创建数据库,实现对数据库的访问,实现数据的增删,查改。
android sqlite可视化工具,可以导入新建数据这个数据库里
关于Android SQLite的基本操作,留作以后使用
NULL 博文链接:https://ghostfromheaven.iteye.com/blog/976680
android sqlite示例代码
开源的android sqlite数据操作工具类。
SQlite Android SQLite的应用 简易的学生成绩管理系统 1.用到类似表单的界面。界面美观清晰。 2.搭建ListView WIdget组件。单击列表项即可对其删除修改。 3.实现了对学生信息的增,删,改,查。
SQLite是一个进程内的库,实现了自给自足的、无服务器的、零配置的、事务性的 SQL 数据库引擎。它是一个零配置的数据库,这意味着与其他数据库不一样,您...SQLite 使用 ANSI-C 编写的,并提供了简单和易于使用的 API。
验证android sqlite数据库insert 和delete 方法返回值的具体规律 insert 插入一行,如果当前最大id是4,insert新的一条记录id是5 ,如果把5删除, 在insert一条新的记录id还是5,如果删除的是id为4的记录, 再新增一...
sqlite-android一个Android SQLite支持库
Android 在运行时集成了 SQLite,所以每个 Android 应用程序都可以使用 SQLite 数据库。对数熟悉 SQL 的开发人员来时,使用 SQLite 相当简单。可以,由于 JDBC 不适合手机这种内存受限设备,所以 Android 开发人员...