android的sqlite的初学者的入门

来源:互联网 发布:mac安装win10分区 编辑:程序博客网 时间:2024/06/10 08:52
    • package an.sqlite1;

      import an.sqlite3.db.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.Menu;
      import android.view.View;
      import android.view.View.OnClickListener;
      import android.widget.Button;

      public class SQLiteActivity extends Activity {

      private Button createDatabase;
      private Button updateDatabase;
      private Button insert;
      private Button update;
      private Button query;
      private Button delete;
      private Button deleteTable;

      @Override
      protected void onCreate(Bundle savedInstanceState) {
      super.onCreate(savedInstanceState);
      setContentView(R.layout.main);

      createDatabase=(Button)findViewById(R.id.createDatabase);
      createDatabase.setOnClickListener(new CreateListener());
      updateDatabase=(Button)findViewById(R.id.updateDatabase);
      updateDatabase.setOnClickListener(new UpdateListener());
      insert=(Button)findViewById(R.id.insert);
      insert.setOnClickListener(new InsertListener());
      update=(Button)findViewById(R.id.update);
      update.setOnClickListener(new UpdateRecordListener());
      query=(Button)findViewById(R.id.query);
      query.setOnClickListener(new QueryListener());
      delete=(Button)findViewById(R.id.delete);
      delete.setOnClickListener(new DeleteListener());
      deleteTable=(Button)findViewById(R.id.deleteTable);
      deleteTable.setOnClickListener(new DeleteTableListener());
      }

      class CreateListener implements OnClickListener{

      @Override
      public void onClick(View arg0) {
      // TODO Auto-generated method stub
      //创建一个DatabaseHelper对象
      DatabaseHelper dbHelper=new DatabaseHelper(SQLiteActivity.this,"test_an_db");
      //只有调用DatabaseHelper对象的getReadableDatabase()方法,或者是getWritableDatabase()方法,或者是getWritableDatabase()方法之后,才会创建数据库对象
      SQLiteDatabase db=dbHelper.getReadableDatabase();
      }

      }

      class UpdateListener implements OnClickListener{

      @Override
      public void onClick(View v) {
      // TODO Auto-generated method stub
      DatabaseHelper dbHelper=new DatabaseHelper(SQLiteActivity.this,"test_an_db",2);
      SQLiteDatabase db=dbHelper.getReadableDatabase();
      }

      }

      class DeleteTableListener implements OnClickListener{

      @Override
      public void onClick(View v) {
      // TODO Auto-generated method stub
      DatabaseHelper dbHelper=new DatabaseHelper(SQLiteActivity.this, "test_an_db");
      SQLiteDatabase db=dbHelper.getReadableDatabase();
      db.execSQL("DROP TABLE IF exists test_an_db");
      System.out.println("删除了test_an_db表");
      }

      }

      class InsertListener implements OnClickListener{

      @Override
      public void onClick(View v) {
      // TODO Auto-generated method stub
      System.out.println("InsertListener");
      //生成ContentValues对象,对数据库写操作
      ContentValues values=new ContentValues();
      //想该对象当中插入键值对,其中键是列名,值必须
      values.put("id", 1);
      values.put("name", "zhangsan");
      DatabaseHelper dbHelper=new DatabaseHelper(SQLiteActivity.this, "test_an_db");
      SQLiteDatabase db=dbHelper.getWritableDatabase();
      //调用insert方法,就可以将数据插入到数据库当中
      db.insert("user", null, values);
      }

      }

      //更新操作就想当用与SQL语句中的update语句
      //update table set xxx=xx where x=xxxx
      class UpdateRecordListener implements OnClickListener{

      @Override
      public void onClick(View v) {
      // TODO Auto-generated method stub
      System.out.println("UpdateRecordListener");
      //得到一个可写的SQLiteDatabase对象
      DatabaseHelper dbHelper=new DatabaseHelper(SQLiteActivity.this,"test_an_db");
      SQLiteDatabase db=dbHelper.getWritableDatabase();
      ContentValues values=new ContentValues();
      values.put("name", "zhangsanfeng");
      //第一个参数是要更新的表名,
      //第二个参数是一个ContentValues对象
      //第三个参数是where字句,不包括where (?是占位符)
      db.update("user", values, "id=?", new String[]{"1"});
      }

      }

      class QueryListener implements OnClickListener{

      @Override
      public void onClick(View v) {
      // TODO Auto-generated method stub
      System.out.println("QueryListener");
      //得到一个可写的SQLiteDatabase对象
      DatabaseHelper dbHelper=new DatabaseHelper(SQLiteActivity.this,"test_an_db");
      SQLiteDatabase db=dbHelper.getReadableDatabase();
      Cursor cursor=db.query("user", new String[]{"id","name"},"id=?",new String[]{"1"},null, null, null);
      while(cursor.moveToNext()){
      String name=cursor.getString(cursor.getColumnIndex("name"));

      System.out.println("query--->"+name);
      }
      }

      }

      class DeleteListener implements OnClickListener{

      @Override
      public void onClick(View arg0) {
      // TODO Auto-generated method stub
      DatabaseHelper dbHelper=new DatabaseHelper(SQLiteActivity.this,"test_an_db");
      SQLiteDatabase db=dbHelper.getWritableDatabase();
      db.delete("user", "id=?", new String[]{"1"});
      System.out.println("删除了:id=1");
      }

      }

      @Override
      public boolean onCreateOptionsMenu(Menu menu) {
      // Inflate the menu; this adds items to the action bar if it is present.
      getMenuInflater().inflate(R.menu.sqlite, menu);
      return true;
      }

      }


      -------------------------------------------------------------------------
      package an.sqlite3.db;

      import android.content.Context;
      import android.database.sqlite.SQLiteDatabase;
      import android.database.sqlite.SQLiteDatabase.CursorFactory;
      import android.database.sqlite.SQLiteOpenHelper;

      //DatabaseHelper作为一个访问SQLite的助手类,提供两个方面的功能
      //第一,getReadableDatabase(),getWritableDatabase()可以获得SQLiteDatabase对象,通过该对象才可以对数据库进行操作
      //第二,提供了onCreate()和onUpgrade()两个回调函数,允许我们在创建和升级数据库时,进行自己的操作

      public class DatabaseHelper extends SQLiteOpenHelper {

      private static final int VERSION=1;
      //在SQLiteOpenHelper的子类中,必须有该构造函数
      public DatabaseHelper(Context context, String name, CursorFactory factory,
      int version) {
      //必须通过super调用父类中的构造函数
      super(context, name, factory, version);
      // TODO Auto-generated constructor stub
      }

      //调用了下面三个参数的构造函数
      public DatabaseHelper(Context context,String name){
      this(context,name,VERSION);
      }

      // 调用了第一个四个参数的构造函数
      public DatabaseHelper(Context context,String name,int version){
      this(context,name,null,VERSION);
      }

      //该函数是在第一次创建数据库的时候执行, 实际上是在第一次得到SQLiteDatabase对象的时候,才会调用这个方法
      @Override
      public void onCreate(SQLiteDatabase db) {
      // TODO Auto-generated method stub
      System.out.println("create a Database");
      //execSQL函数用于执行SQL语句 (回调函数)
      db.execSQL("create table user(id int,name varchar(20))");
      }
      @Override
      public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
      // TODO Auto-generated method stub
      System.out.println("update a Database");
      }


      }游戏开发Android源码招聘学习路线图

      帖子
      搜索
      热搜: 二维码定时器手电筒滑块斗地主书架定位买手机聊天游戏开发游戏股票查询机顶盒通话记录二维码扫描振动器listviewfragment音乐播放器播放器
      eoe 移动开发者论坛»社区›Android开发交流›Android实例教程›初学者的sqlite操作android数据库
      返回列表发新帖回复
      查看: 194|回复: 0
      打印 上一主题 下一主题
      收起左侧 [Android实例] 初学者的sqlite操作android数据库 [复制链接]
      mi.你

      18
      主题
      33
      帖子
      604
      e币
      电梯直达跳转到指定楼层 楼主
      发表于 2014-11-9 00:04:28 | 只看该作者 回帖奖励
      package an.sqlite1;

      import an.sqlite3.db.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.Menu;
      import android.view.View;
      import android.view.View.OnClickListener;
      import android.widget.Button;

      public class SQLiteActivity extends Activity {

      private Button createDatabase;
      private Button updateDatabase;
      private Button insert;
      private Button update;
      private Button query;
      private Button delete;
      private Button deleteTable;

      @Override
      protected void onCreate(Bundle savedInstanceState) {
      super.onCreate(savedInstanceState);
      setContentView(R.layout.main);

      createDatabase=(Button)findViewById(R.id.createDatabase);
      createDatabase.setOnClickListener(new CreateListener());
      updateDatabase=(Button)findViewById(R.id.updateDatabase);
      updateDatabase.setOnClickListener(new UpdateListener());
      insert=(Button)findViewById(R.id.insert);
      insert.setOnClickListener(new InsertListener());
      update=(Button)findViewById(R.id.update);
      update.setOnClickListener(new UpdateRecordListener());
      query=(Button)findViewById(R.id.query);
      query.setOnClickListener(new QueryListener());
      delete=(Button)findViewById(R.id.delete);
      delete.setOnClickListener(new DeleteListener());
      deleteTable=(Button)findViewById(R.id.deleteTable);
      deleteTable.setOnClickListener(new DeleteTableListener());
      }

      class CreateListener implements OnClickListener{

      @Override
      public void onClick(View arg0) {
      // TODO Auto-generated method stub
      //创建一个DatabaseHelper对象
      DatabaseHelper dbHelper=new DatabaseHelper(SQLiteActivity.this,"test_an_db");
      //只有调用DatabaseHelper对象的getReadableDatabase()方法,或者是getWritableDatabase()方法,或者是getWritableDatabase()方法之后,才会创建数据库对象
      SQLiteDatabase db=dbHelper.getReadableDatabase();
      }

      }

      class UpdateListener implements OnClickListener{

      @Override
      public void onClick(View v) {
      // TODO Auto-generated method stub
      DatabaseHelper dbHelper=new DatabaseHelper(SQLiteActivity.this,"test_an_db",2);
      SQLiteDatabase db=dbHelper.getReadableDatabase();
      }

      }

      class DeleteTableListener implements OnClickListener{

      @Override
      public void onClick(View v) {
      // TODO Auto-generated method stub
      DatabaseHelper dbHelper=new DatabaseHelper(SQLiteActivity.this, "test_an_db");
      SQLiteDatabase db=dbHelper.getReadableDatabase();
      db.execSQL("DROP TABLE IF exists test_an_db");
      System.out.println("删除了test_an_db表");
      }

      }

      class InsertListener implements OnClickListener{

      @Override
      public void onClick(View v) {
      // TODO Auto-generated method stub
      System.out.println("InsertListener");
      //生成ContentValues对象,对数据库写操作
      ContentValues values=new ContentValues();
      //想该对象当中插入键值对,其中键是列名,值必须
      values.put("id", 1);
      values.put("name", "zhangsan");
      DatabaseHelper dbHelper=new DatabaseHelper(SQLiteActivity.this, "test_an_db");
      SQLiteDatabase db=dbHelper.getWritableDatabase();
      //调用insert方法,就可以将数据插入到数据库当中
      db.insert("user", null, values);
      }

      }

      //更新操作就想当用与SQL语句中的update语句
      //update table set xxx=xx where x=xxxx
      class UpdateRecordListener implements OnClickListener{

      @Override
      public void onClick(View v) {
      // TODO Auto-generated method stub
      System.out.println("UpdateRecordListener");
      //得到一个可写的SQLiteDatabase对象
      DatabaseHelper dbHelper=new DatabaseHelper(SQLiteActivity.this,"test_an_db");
      SQLiteDatabase db=dbHelper.getWritableDatabase();
      ContentValues values=new ContentValues();
      values.put("name", "zhangsanfeng");
      //第一个参数是要更新的表名,
      //第二个参数是一个ContentValues对象
      //第三个参数是where字句,不包括where (?是占位符)
      db.update("user", values, "id=?", new String[]{"1"});
      }

      }

      class QueryListener implements OnClickListener{

      @Override
      public void onClick(View v) {
      // TODO Auto-generated method stub
      System.out.println("QueryListener");
      //得到一个可写的SQLiteDatabase对象
      DatabaseHelper dbHelper=new DatabaseHelper(SQLiteActivity.this,"test_an_db");
      SQLiteDatabase db=dbHelper.getReadableDatabase();
      Cursor cursor=db.query("user", new String[]{"id","name"},"id=?",new String[]{"1"},null, null, null);
      while(cursor.moveToNext()){
      String name=cursor.getString(cursor.getColumnIndex("name"));

      System.out.println("query--->"+name);
      }
      }

      }

      class DeleteListener implements OnClickListener{

      @Override
      public void onClick(View arg0) {
      // TODO Auto-generated method stub
      DatabaseHelper dbHelper=new DatabaseHelper(SQLiteActivity.this,"test_an_db");
      SQLiteDatabase db=dbHelper.getWritableDatabase();
      db.delete("user", "id=?", new String[]{"1"});
      System.out.println("删除了:id=1");
      }

      }

      @Override
      public boolean onCreateOptionsMenu(Menu menu) {
      // Inflate the menu; this adds items to the action bar if it is present.
      getMenuInflater().inflate(R.menu.sqlite, menu);
      return true;
      }

      }


      -------------------------------------------------------------------------
      package an.sqlite3.db;

      import android.content.Context;
      import android.database.sqlite.SQLiteDatabase;
      import android.database.sqlite.SQLiteDatabase.CursorFactory;
      import android.database.sqlite.SQLiteOpenHelper;

      //DatabaseHelper作为一个访问SQLite的助手类,提供两个方面的功能
      //第一,getReadableDatabase(),getWritableDatabase()可以获得SQLiteDatabase对象,通过该对象才可以对数据库进行操作
      //第二,提供了onCreate()和onUpgrade()两个回调函数,允许我们在创建和升级数据库时,进行自己的操作

      public class DatabaseHelper extends SQLiteOpenHelper {

      private static final int VERSION=1;
      //在SQLiteOpenHelper的子类中,必须有该构造函数
      public DatabaseHelper(Context context, String name, CursorFactory factory,
      int version) {
      //必须通过super调用父类中的构造函数
      super(context, name, factory, version);
      // TODO Auto-generated constructor stub
      }

      //调用了下面三个参数的构造函数
      public DatabaseHelper(Context context,String name){
      this(context,name,VERSION);
      }

      // 调用了第一个四个参数的构造函数
      public DatabaseHelper(Context context,String name,int version){
      this(context,name,null,VERSION);
      }

      //该函数是在第一次创建数据库的时候执行, 实际上是在第一次得到SQLiteDatabase对象的时候,才会调用这个方法
      @Override
      public void onCreate(SQLiteDatabase db) {
      // TODO Auto-generated method stub
      System.out.println("create a Database");
      //execSQL函数用于执行SQL语句 (回调函数)
      db.execSQL("create table user(id int,name varchar(20))");
      }
      @Override
      public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
      // TODO Auto-generated method stub
      System.out.println("update a Database");
      }


      }

      • 游戏开发
      • Android源码
      • 招聘
      • 学习路线图
       帖子
      热搜:二维码定时器手电筒滑块斗地主书架定位买手机聊天游戏开发游戏股票查询机顶盒通话记录二维码扫描振动器listviewfragment音乐播放器播放器
      eoe 移动开发者论坛»社区Android开发交流Android实例教程初学者的sqlite操作android数据库
      返回列表发新帖回复
      查看: 194|回复: 0
      打印 上一主题 下一主题
      收起左侧

      [Android实例] 初学者的sqlite操作android数据库 

      [复制链接]
      mi.你

      18

      主题

      33

      帖子

      604

      e币
      跳转到指定楼层
      楼主
       发表于 2014-11-9 00:04:28 | 只看该作者 回帖奖励
      package an.sqlite1;

      import an.sqlite3.db.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.Menu;
      import android.view.View;
      import android.view.View.OnClickListener;
      import android.widget.Button;

      public class SQLiteActivity extends Activity {

              private Button createDatabase;
              private Button updateDatabase;
              private Button insert;
              private Button update;
              private Button query;
              private Button delete;
              private Button deleteTable;
              
              @Override
              protected void onCreate(Bundle savedInstanceState) {
                      super.onCreate(savedInstanceState);
                      setContentView(R.layout.main);
                      
                      createDatabase=(Button)findViewById(R.id.createDatabase);
                      createDatabase.setOnClickListener(new CreateListener());
                      updateDatabase=(Button)findViewById(R.id.updateDatabase);
                      updateDatabase.setOnClickListener(new UpdateListener());
                      insert=(Button)findViewById(R.id.insert);
                      insert.setOnClickListener(new InsertListener());
                      update=(Button)findViewById(R.id.update);
                      update.setOnClickListener(new UpdateRecordListener());
                      query=(Button)findViewById(R.id.query);
                      query.setOnClickListener(new QueryListener());
                      delete=(Button)findViewById(R.id.delete);
                      delete.setOnClickListener(new DeleteListener());
                      deleteTable=(Button)findViewById(R.id.deleteTable);
                      deleteTable.setOnClickListener(new DeleteTableListener());
              }
              
              class CreateListener implements OnClickListener{

                      @Override
                      public void onClick(View arg0) {
                              // TODO Auto-generated method stub
                              //创建一个DatabaseHelper对象
                              DatabaseHelper dbHelper=new DatabaseHelper(SQLiteActivity.this,"test_an_db");
                              //只有调用DatabaseHelper对象的getReadableDatabase()方法,或者是getWritableDatabase()方法,或者是getWritableDatabase()方法之后,才会创建数据库对象
                              SQLiteDatabase db=dbHelper.getReadableDatabase();
                      }
                      
              }
              
              class UpdateListener implements OnClickListener{

                      @Override
                      public void onClick(View v) {
                              // TODO Auto-generated method stub
                              DatabaseHelper dbHelper=new DatabaseHelper(SQLiteActivity.this,"test_an_db",2);
                              SQLiteDatabase db=dbHelper.getReadableDatabase();
                      }
                      
              }
              
              class DeleteTableListener implements OnClickListener{

                      @Override
                      public void onClick(View v) {
                              // TODO Auto-generated method stub
                              DatabaseHelper dbHelper=new DatabaseHelper(SQLiteActivity.this, "test_an_db");
                              SQLiteDatabase db=dbHelper.getReadableDatabase();
                              db.execSQL("DROP TABLE IF exists test_an_db");
                              System.out.println("删除了test_an_db表");
                      }
                      
              }
              
              class InsertListener implements OnClickListener{

                      @Override
                      public void onClick(View v) {
                              // TODO Auto-generated method stub
                              System.out.println("InsertListener");
                              //生成ContentValues对象,对数据库写操作
                              ContentValues values=new ContentValues();
                              //想该对象当中插入键值对,其中键是列名,值必须
                              values.put("id", 1);
                              values.put("name", "zhangsan");
                              DatabaseHelper dbHelper=new DatabaseHelper(SQLiteActivity.this, "test_an_db");
                              SQLiteDatabase db=dbHelper.getWritableDatabase();
                              //调用insert方法,就可以将数据插入到数据库当中
                              db.insert("user", null, values);                        
                      }
                      
              }
              
              //更新操作就想当用与SQL语句中的update语句
              //update table set xxx=xx where x=xxxx
              class UpdateRecordListener implements OnClickListener{

                      @Override
                      public void onClick(View v) {
                              // TODO Auto-generated method stub
                              System.out.println("UpdateRecordListener");
                              //得到一个可写的SQLiteDatabase对象
                              DatabaseHelper dbHelper=new DatabaseHelper(SQLiteActivity.this,"test_an_db");
                              SQLiteDatabase db=dbHelper.getWritableDatabase();
                              ContentValues values=new ContentValues();
                              values.put("name", "zhangsanfeng");
                              //第一个参数是要更新的表名,
                              //第二个参数是一个ContentValues对象
                              //第三个参数是where字句,不包括where  (?是占位符)
                              db.update("user", values, "id=?", new String[]{"1"});
                      }
                      
              }
              
              class QueryListener implements OnClickListener{

                      @Override
                      public void onClick(View v) {
                              // TODO Auto-generated method stub
                              System.out.println("QueryListener");
                              //得到一个可写的SQLiteDatabase对象
                              DatabaseHelper dbHelper=new DatabaseHelper(SQLiteActivity.this,"test_an_db");
                              SQLiteDatabase db=dbHelper.getReadableDatabase();
                              Cursor cursor=db.query("user", new String[]{"id","name"},"id=?",new String[]{"1"},null, null, null);
                              while(cursor.moveToNext()){
                                      String name=cursor.getString(cursor.getColumnIndex("name"));
                                      
                                      System.out.println("query--->"+name);
                              }
                      }
                      
              }
              
              class DeleteListener implements OnClickListener{

                      @Override
                      public void onClick(View arg0) {
                              // TODO Auto-generated method stub
                              DatabaseHelper dbHelper=new DatabaseHelper(SQLiteActivity.this,"test_an_db");
                              SQLiteDatabase db=dbHelper.getWritableDatabase();
                              db.delete("user", "id=?", new String[]{"1"});
                              System.out.println("删除了:id=1");
                      }
                      
              }

              @Override
              public boolean onCreateOptionsMenu(Menu menu) {
                      // Inflate the menu; this adds items to the action bar if it is present.
                      getMenuInflater().inflate(R.menu.sqlite, menu);
                      return true;
              }

      }


      -------------------------------------------------------------------------
      package an.sqlite3.db;

      import android.content.Context;
      import android.database.sqlite.SQLiteDatabase;
      import android.database.sqlite.SQLiteDatabase.CursorFactory;
      import android.database.sqlite.SQLiteOpenHelper;

      //DatabaseHelper作为一个访问SQLite的助手类,提供两个方面的功能
      //第一,getReadableDatabase(),getWritableDatabase()可以获得SQLiteDatabase对象,通过该对象才可以对数据库进行操作
      //第二,提供了onCreate()和onUpgrade()两个回调函数,允许我们在创建和升级数据库时,进行自己的操作

      public class DatabaseHelper extends SQLiteOpenHelper {

              private static final int VERSION=1;
              //在SQLiteOpenHelper的子类中,必须有该构造函数
              public DatabaseHelper(Context context, String name, CursorFactory factory,
                              int version) {
                      //必须通过super调用父类中的构造函数
                      super(context, name, factory, version);
                      // TODO Auto-generated constructor stub
              }
              
              //调用了下面三个参数的构造函数
              public DatabaseHelper(Context context,String name){
                      this(context,name,VERSION);
              }
              
      //        调用了第一个四个参数的构造函数
              public DatabaseHelper(Context context,String name,int version){
                      this(context,name,null,VERSION);
              }
              
              //该函数是在第一次创建数据库的时候执行, 实际上是在第一次得到SQLiteDatabase对象的时候,才会调用这个方法
              @Override
              public void onCreate(SQLiteDatabase db) {
                      // TODO Auto-generated method stub
                      System.out.println("create a Database");
                      //execSQL函数用于执行SQL语句  (回调函数)
                      db.execSQL("create table user(id int,name varchar(20))");
              }
              @Override
              public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
                      // TODO Auto-generated method stub
                      System.out.println("update a Database");
              }

              
      }
      游戏开发
    • Android源码
    • 招聘
    • 学习路线图
     帖子
    热搜:二维码定时器手电筒滑块斗地主书架定位买手机聊天游戏开发游戏股票查询机顶盒通话记录二维码扫描振动器listviewfragment音乐播放器播放器
    eoe 移动开发者论坛»社区Android开发交流Android实例教程初学者的sqlite操作android数据库
    返回列表发新帖回复
    查看: 194|回复: 0
    打印 上一主题 下一主题
    收起左侧

    [Android实例] 初学者的sqlite操作android数据库 

    [复制链接]
    mi.你

    18

    主题

    33

    帖子

    604

    e币
    跳转到指定楼层
    楼主
     发表于 2014-11-9 00:04:28 | 只看该作者 回帖奖励
    package an.sqlite1;

    import an.sqlite3.db.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.Menu;
    import android.view.View;
    import android.view.View.OnClickListener;
    import android.widget.Button;

    public class SQLiteActivity extends Activity {

            private Button createDatabase;
            private Button updateDatabase;
            private Button insert;
            private Button update;
            private Button query;
            private Button delete;
            private Button deleteTable;
            
            @Override
            protected void onCreate(Bundle savedInstanceState) {
                    super.onCreate(savedInstanceState);
                    setContentView(R.layout.main);
                    
                    createDatabase=(Button)findViewById(R.id.createDatabase);
                    createDatabase.setOnClickListener(new CreateListener());
                    updateDatabase=(Button)findViewById(R.id.updateDatabase);
                    updateDatabase.setOnClickListener(new UpdateListener());
                    insert=(Button)findViewById(R.id.insert);
                    insert.setOnClickListener(new InsertListener());
                    update=(Button)findViewById(R.id.update);
                    update.setOnClickListener(new UpdateRecordListener());
                    query=(Button)findViewById(R.id.query);
                    query.setOnClickListener(new QueryListener());
                    delete=(Button)findViewById(R.id.delete);
                    delete.setOnClickListener(new DeleteListener());
                    deleteTable=(Button)findViewById(R.id.deleteTable);
                    deleteTable.setOnClickListener(new DeleteTableListener());
            }
            
            class CreateListener implements OnClickListener{

                    @Override
                    public void onClick(View arg0) {
                            // TODO Auto-generated method stub
                            //创建一个DatabaseHelper对象
                            DatabaseHelper dbHelper=new DatabaseHelper(SQLiteActivity.this,"test_an_db");
                            //只有调用DatabaseHelper对象的getReadableDatabase()方法,或者是getWritableDatabase()方法,或者是getWritableDatabase()方法之后,才会创建数据库对象
                            SQLiteDatabase db=dbHelper.getReadableDatabase();
                    }
                    
            }
            
            class UpdateListener implements OnClickListener{

                    @Override
                    public void onClick(View v) {
                            // TODO Auto-generated method stub
                            DatabaseHelper dbHelper=new DatabaseHelper(SQLiteActivity.this,"test_an_db",2);
                            SQLiteDatabase db=dbHelper.getReadableDatabase();
                    }
                    
            }
            
            class DeleteTableListener implements OnClickListener{

                    @Override
                    public void onClick(View v) {
                            // TODO Auto-generated method stub
                            DatabaseHelper dbHelper=new DatabaseHelper(SQLiteActivity.this, "test_an_db");
                            SQLiteDatabase db=dbHelper.getReadableDatabase();
                            db.execSQL("DROP TABLE IF exists test_an_db");
                            System.out.println("删除了test_an_db表");
                    }
                    
            }
            
            class InsertListener implements OnClickListener{

                    @Override
                    public void onClick(View v) {
                            // TODO Auto-generated method stub
                            System.out.println("InsertListener");
                            //生成ContentValues对象,对数据库写操作
                            ContentValues values=new ContentValues();
                            //想该对象当中插入键值对,其中键是列名,值必须
                            values.put("id", 1);
                            values.put("name", "zhangsan");
                            DatabaseHelper dbHelper=new DatabaseHelper(SQLiteActivity.this, "test_an_db");
                            SQLiteDatabase db=dbHelper.getWritableDatabase();
                            //调用insert方法,就可以将数据插入到数据库当中
                            db.insert("user", null, values);                        
                    }
                    
            }
            
            //更新操作就想当用与SQL语句中的update语句
            //update table set xxx=xx where x=xxxx
            class UpdateRecordListener implements OnClickListener{

                    @Override
                    public void onClick(View v) {
                            // TODO Auto-generated method stub
                            System.out.println("UpdateRecordListener");
                            //得到一个可写的SQLiteDatabase对象
                            DatabaseHelper dbHelper=new DatabaseHelper(SQLiteActivity.this,"test_an_db");
                            SQLiteDatabase db=dbHelper.getWritableDatabase();
                            ContentValues values=new ContentValues();
                            values.put("name", "zhangsanfeng");
                            //第一个参数是要更新的表名,
                            //第二个参数是一个ContentValues对象
                            //第三个参数是where字句,不包括where  (?是占位符)
                            db.update("user", values, "id=?", new String[]{"1"});
                    }
                    
            }
            
            class QueryListener implements OnClickListener{

                    @Override
                    public void onClick(View v) {
                            // TODO Auto-generated method stub
                            System.out.println("QueryListener");
                            //得到一个可写的SQLiteDatabase对象
                            DatabaseHelper dbHelper=new DatabaseHelper(SQLiteActivity.this,"test_an_db");
                            SQLiteDatabase db=dbHelper.getReadableDatabase();
                            Cursor cursor=db.query("user", new String[]{"id","name"},"id=?",new String[]{"1"},null, null, null);
                            while(cursor.moveToNext()){
                                    String name=cursor.getString(cursor.getColumnIndex("name"));
                                    
                                    System.out.println("query--->"+name);
                            }
                    }
                    
            }
            
            class DeleteListener implements OnClickListener{

                    @Override
                    public void onClick(View arg0) {
                            // TODO Auto-generated method stub
                            DatabaseHelper dbHelper=new DatabaseHelper(SQLiteActivity.this,"test_an_db");
                            SQLiteDatabase db=dbHelper.getWritableDatabase();
                            db.delete("user", "id=?", new String[]{"1"});
                            System.out.println("删除了:id=1");
                    }
                    
            }

            @Override
            public boolean onCreateOptionsMenu(Menu menu) {
                    // Inflate the menu; this adds items to the action bar if it is present.
                    getMenuInflater().inflate(R.menu.sqlite, menu);
                    return true;
            }

    }


    -------------------------------------------------------------------------
    package an.sqlite3.db;

    import android.content.Context;
    import android.database.sqlite.SQLiteDatabase;
    import android.database.sqlite.SQLiteDatabase.CursorFactory;
    import android.database.sqlite.SQLiteOpenHelper;

    //DatabaseHelper作为一个访问SQLite的助手类,提供两个方面的功能
    //第一,getReadableDatabase(),getWritableDatabase()可以获得SQLiteDatabase对象,通过该对象才可以对数据库进行操作
    //第二,提供了onCreate()和onUpgrade()两个回调函数,允许我们在创建和升级数据库时,进行自己的操作

    public class DatabaseHelper extends SQLiteOpenHelper {

            private static final int VERSION=1;
            //在SQLiteOpenHelper的子类中,必须有该构造函数
            public DatabaseHelper(Context context, String name, CursorFactory factory,
                            int version) {
                    //必须通过super调用父类中的构造函数
                    super(context, name, factory, version);
                    // TODO Auto-generated constructor stub
            }
            
            //调用了下面三个参数的构造函数
            public DatabaseHelper(Context context,String name){
                    this(context,name,VERSION);
            }
            
    //        调用了第一个四个参数的构造函数
            public DatabaseHelper(Context context,String name,int version){
                    this(context,name,null,VERSION);
            }
            
            //该函数是在第一次创建数据库的时候执行, 实际上是在第一次得到SQLiteDatabase对象的时候,才会调用这个方法
            @Override
            public void onCreate(SQLiteDatabase db) {
                    // TODO Auto-generated method stub
                    System.out.println("create a Database");
                    //execSQL函数用于执行SQL语句  (回调函数)
                    db.execSQL("create table user(id int,name varchar(20))");
            }
            @Override
            public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
                    // TODO Auto-generated method stub
                    System.out.println("update a Database");
            }

            
    }



    • 游戏开发
    • Android源码
    • 招聘
    • 学习路线图
     帖子
    热搜:二维码定时器手电筒滑块斗地主书架定位买手机聊天游戏开发游戏股票查询机顶盒通话记录二维码扫描振动器listviewfragment音乐播放器播放器
    eoe 移动开发者论坛»社区Android开发交流Android实例教程初学者的sqlite操作android数据库
    返回列表发新帖回复
    查看: 194|回复: 0
    打印 上一主题 下一主题
    收起左侧

    [Android实例] 初学者的sqlite操作android数据库 

    [复制链接]
    mi.你

    18

    主题

    33

    帖子

    604

    e币
    跳转到指定楼层
    楼主
     发表于 2014-11-9 00:04:28 | 只看该作者 回帖奖励
    package an.sqlite1;

    import an.sqlite3.db.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.Menu;
    import android.view.View;
    import android.view.View.OnClickListener;
    import android.widget.Button;

    public class SQLiteActivity extends Activity {

            private Button createDatabase;
            private Button updateDatabase;
            private Button insert;
            private Button update;
            private Button query;
            private Button delete;
            private Button deleteTable;
            
            @Override
            protected void onCreate(Bundle savedInstanceState) {
                    super.onCreate(savedInstanceState);
                    setContentView(R.layout.main);
                    
                    createDatabase=(Button)findViewById(R.id.createDatabase);
                    createDatabase.setOnClickListener(new CreateListener());
                    updateDatabase=(Button)findViewById(R.id.updateDatabase);
                    updateDatabase.setOnClickListener(new UpdateListener());
                    insert=(Button)findViewById(R.id.insert);
                    insert.setOnClickListener(new InsertListener());
                    update=(Button)findViewById(R.id.update);
                    update.setOnClickListener(new UpdateRecordListener());
                    query=(Button)findViewById(R.id.query);
                    query.setOnClickListener(new QueryListener());
                    delete=(Button)findViewById(R.id.delete);
                    delete.setOnClickListener(new DeleteListener());
                    deleteTable=(Button)findViewById(R.id.deleteTable);
                    deleteTable.setOnClickListener(new DeleteTableListener());
            }
            
            class CreateListener implements OnClickListener{

                    @Override
                    public void onClick(View arg0) {
                            // TODO Auto-generated method stub
                            //创建一个DatabaseHelper对象
                            DatabaseHelper dbHelper=new DatabaseHelper(SQLiteActivity.this,"test_an_db");
                            //只有调用DatabaseHelper对象的getReadableDatabase()方法,或者是getWritableDatabase()方法,或者是getWritableDatabase()方法之后,才会创建数据库对象
                            SQLiteDatabase db=dbHelper.getReadableDatabase();
                    }
                    
            }
            
            class UpdateListener implements OnClickListener{

                    @Override
                    public void onClick(View v) {
                            // TODO Auto-generated method stub
                            DatabaseHelper dbHelper=new DatabaseHelper(SQLiteActivity.this,"test_an_db",2);
                            SQLiteDatabase db=dbHelper.getReadableDatabase();
                    }
                    
            }
            
            class DeleteTableListener implements OnClickListener{

                    @Override
                    public void onClick(View v) {
                            // TODO Auto-generated method stub
                            DatabaseHelper dbHelper=new DatabaseHelper(SQLiteActivity.this, "test_an_db");
                            SQLiteDatabase db=dbHelper.getReadableDatabase();
                            db.execSQL("DROP TABLE IF exists test_an_db");
                            System.out.println("删除了test_an_db表");
                    }
                    
            }
            
            class InsertListener implements OnClickListener{

                    @Override
                    public void onClick(View v) {
                            // TODO Auto-generated method stub
                            System.out.println("InsertListener");
                            //生成ContentValues对象,对数据库写操作
                            ContentValues values=new ContentValues();
                            //想该对象当中插入键值对,其中键是列名,值必须
                            values.put("id", 1);
                            values.put("name", "zhangsan");
                            DatabaseHelper dbHelper=new DatabaseHelper(SQLiteActivity.this, "test_an_db");
                            SQLiteDatabase db=dbHelper.getWritableDatabase();
                            //调用insert方法,就可以将数据插入到数据库当中
                            db.insert("user", null, values);                        
                    }
                    
            }
            
            //更新操作就想当用与SQL语句中的update语句
            //update table set xxx=xx where x=xxxx
            class UpdateRecordListener implements OnClickListener{

                    @Override
                    public void onClick(View v) {
                            // TODO Auto-generated method stub
                            System.out.println("UpdateRecordListener");
                            //得到一个可写的SQLiteDatabase对象
                            DatabaseHelper dbHelper=new DatabaseHelper(SQLiteActivity.this,"test_an_db");
                            SQLiteDatabase db=dbHelper.getWritableDatabase();
                            ContentValues values=new ContentValues();
                            values.put("name", "zhangsanfeng");
                            //第一个参数是要更新的表名,
                            //第二个参数是一个ContentValues对象
                            //第三个参数是where字句,不包括where  (?是占位符)
                            db.update("user", values, "id=?", new String[]{"1"});
                    }
                    
            }
            
            class QueryListener implements OnClickListener{

                    @Override
                    public void onClick(View v) {
                            // TODO Auto-generated method stub
                            System.out.println("QueryListener");
                            //得到一个可写的SQLiteDatabase对象
                            DatabaseHelper dbHelper=new DatabaseHelper(SQLiteActivity.this,"test_an_db");
                            SQLiteDatabase db=dbHelper.getReadableDatabase();
                            Cursor cursor=db.query("user", new String[]{"id","name"},"id=?",new String[]{"1"},null, null, null);
                            while(cursor.moveToNext()){
                                    String name=cursor.getString(cursor.getColumnIndex("name"));
                                    
                                    System.out.println("query--->"+name);
                            }
                    }
                    
            }
            
            class DeleteListener implements OnClickListener{

                    @Override
                    public void onClick(View arg0) {
                            // TODO Auto-generated method stub
                            DatabaseHelper dbHelper=new DatabaseHelper(SQLiteActivity.this,"test_an_db");
                            SQLiteDatabase db=dbHelper.getWritableDatabase();
                            db.delete("user", "id=?", new String[]{"1"});
                            System.out.println("删除了:id=1");
                    }
                    
            }

            @Override
            public boolean onCreateOptionsMenu(Menu menu) {
                    // Inflate the menu; this adds items to the action bar if it is present.
                    getMenuInflater().inflate(R.menu.sqlite, menu);
                    return true;
            }

    }


    -------------------------------------------------------------------------
    package an.sqlite3.db;

    import android.content.Context;
    import android.database.sqlite.SQLiteDatabase;
    import android.database.sqlite.SQLiteDatabase.CursorFactory;
    import android.database.sqlite.SQLiteOpenHelper;

    //DatabaseHelper作为一个访问SQLite的助手类,提供两个方面的功能
    //第一,getReadableDatabase(),getWritableDatabase()可以获得SQLiteDatabase对象,通过该对象才可以对数据库进行操作
    //第二,提供了onCreate()和onUpgrade()两个回调函数,允许我们在创建和升级数据库时,进行自己的操作

    public class DatabaseHelper extends SQLiteOpenHelper {

            private static final int VERSION=1;
            //在SQLiteOpenHelper的子类中,必须有该构造函数
            public DatabaseHelper(Context context, String name, CursorFactory factory,
                            int version) {
                    //必须通过super调用父类中的构造函数
                    super(context, name, factory, version);
                    // TODO Auto-generated constructor stub
            }
            
            //调用了下面三个参数的构造函数
            public DatabaseHelper(Context context,String name){
                    this(context,name,VERSION);
            }
            
    //        调用了第一个四个参数的构造函数
            public DatabaseHelper(Context context,String name,int version){
                    this(context,name,null,VERSION);
            }
            
            //该函数是在第一次创建数据库的时候执行, 实际上是在第一次得到SQLiteDatabase对象的时候,才会调用这个方法
            @Override
            public void onCreate(SQLiteDatabase db) {
                    // TODO Auto-generated method stub
                    System.out.println("create a Database");
                    //execSQL函数用于执行SQL语句  (回调函数)
                    db.execSQL("create table user(id int,name varchar(20))");
            }
            @Override
            public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
                    // TODO Auto-generated method stub
                    System.out.println("update a Database");
            }

            
    }


    • 游戏开发
    • Android源码
    • 招聘
    • 学习路线图
     帖子
    热搜:二维码定时器手电筒滑块斗地主书架定位买手机聊天游戏开发游戏股票查询机顶盒通话记录二维码扫描振动器listviewfragment音乐播放器播放器
    eoe 移动开发者论坛»社区Android开发交流Android实例教程初学者的sqlite操作android数据库
    返回列表发新帖回复
    查看: 194|回复: 0
    打印 上一主题 下一主题
    收起左侧

    [Android实例] 初学者的sqlite操作android数据库 

    [复制链接]
    mi.你

    18

    主题

    33

    帖子

    604

    e币
    跳转到指定楼层
    楼主
     发表于 2014-11-9 00:04:28 | 只看该作者 回帖奖励
    package an.sqlite1;

    import an.sqlite3.db.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.Menu;
    import android.view.View;
    import android.view.View.OnClickListener;
    import android.widget.Button;

    public class SQLiteActivity extends Activity {

            private Button createDatabase;
            private Button updateDatabase;
            private Button insert;
            private Button update;
            private Button query;
            private Button delete;
            private Button deleteTable;
            
            @Override
            protected void onCreate(Bundle savedInstanceState) {
                    super.onCreate(savedInstanceState);
                    setContentView(R.layout.main);
                    
                    createDatabase=(Button)findViewById(R.id.createDatabase);
                    createDatabase.setOnClickListener(new CreateListener());
                    updateDatabase=(Button)findViewById(R.id.updateDatabase);
                    updateDatabase.setOnClickListener(new UpdateListener());
                    insert=(Button)findViewById(R.id.insert);
                    insert.setOnClickListener(new InsertListener());
                    update=(Button)findViewById(R.id.update);
                    update.setOnClickListener(new UpdateRecordListener());
                    query=(Button)findViewById(R.id.query);
                    query.setOnClickListener(new QueryListener());
                    delete=(Button)findViewById(R.id.delete);
                    delete.setOnClickListener(new DeleteListener());
                    deleteTable=(Button)findViewById(R.id.deleteTable);
                    deleteTable.setOnClickListener(new DeleteTableListener());
            }
            
            class CreateListener implements OnClickListener{

                    @Override
                    public void onClick(View arg0) {
                            // TODO Auto-generated method stub
                            //创建一个DatabaseHelper对象
                            DatabaseHelper dbHelper=new DatabaseHelper(SQLiteActivity.this,"test_an_db");
                            //只有调用DatabaseHelper对象的getReadableDatabase()方法,或者是getWritableDatabase()方法,或者是getWritableDatabase()方法之后,才会创建数据库对象
                            SQLiteDatabase db=dbHelper.getReadableDatabase();
                    }
                    
            }
            
            class UpdateListener implements OnClickListener{

                    @Override
                    public void onClick(View v) {
                            // TODO Auto-generated method stub
                            DatabaseHelper dbHelper=new DatabaseHelper(SQLiteActivity.this,"test_an_db",2);
                            SQLiteDatabase db=dbHelper.getReadableDatabase();
                    }
                    
            }
            
            class DeleteTableListener implements OnClickListener{

                    @Override
                    public void onClick(View v) {
                            // TODO Auto-generated method stub
                            DatabaseHelper dbHelper=new DatabaseHelper(SQLiteActivity.this, "test_an_db");
                            SQLiteDatabase db=dbHelper.getReadableDatabase();
                            db.execSQL("DROP TABLE IF exists test_an_db");
                            System.out.println("删除了test_an_db表");
                    }
                    
            }
            
            class InsertListener implements OnClickListener{

                    @Override
                    public void onClick(View v) {
                            // TODO Auto-generated method stub
                            System.out.println("InsertListener");
                            //生成ContentValues对象,对数据库写操作
                            ContentValues values=new ContentValues();
                            //想该对象当中插入键值对,其中键是列名,值必须
                            values.put("id", 1);
                            values.put("name", "zhangsan");
                            DatabaseHelper dbHelper=new DatabaseHelper(SQLiteActivity.this, "test_an_db");
                            SQLiteDatabase db=dbHelper.getWritableDatabase();
                            //调用insert方法,就可以将数据插入到数据库当中
                            db.insert("user", null, values);                        
                    }
                    
            }
            
            //更新操作就想当用与SQL语句中的update语句
            //update table set xxx=xx where x=xxxx
            class UpdateRecordListener implements OnClickListener{

                    @Override
                    public void onClick(View v) {
                            // TODO Auto-generated method stub
                            System.out.println("UpdateRecordListener");
                            //得到一个可写的SQLiteDatabase对象
                            DatabaseHelper dbHelper=new DatabaseHelper(SQLiteActivity.this,"test_an_db");
                            SQLiteDatabase db=dbHelper.getWritableDatabase();
                            ContentValues values=new ContentValues();
                            values.put("name", "zhangsanfeng");
                            //第一个参数是要更新的表名,
                            //第二个参数是一个ContentValues对象
                            //第三个参数是where字句,不包括where  (?是占位符)
                            db.update("user", values, "id=?", new String[]{"1"});
                    }
                    
            }
            
            class QueryListener implements OnClickListener{

                    @Override
                    public void onClick(View v) {
                            // TODO Auto-generated method stub
                            System.out.println("QueryListener");
                            //得到一个可写的SQLiteDatabase对象
                            DatabaseHelper dbHelper=new DatabaseHelper(SQLiteActivity.this,"test_an_db");
                            SQLiteDatabase db=dbHelper.getReadableDatabase();
                            Cursor cursor=db.query("user", new String[]{"id","name"},"id=?",new String[]{"1"},null, null, null);
                            while(cursor.moveToNext()){
                                    String name=cursor.getString(cursor.getColumnIndex("name"));
                                    
                                    System.out.println("query--->"+name);
                            }
                    }
                    
            }
            
            class DeleteListener implements OnClickListener{

                    @Override
                    public void onClick(View arg0) {
                            // TODO Auto-generated method stub
                            DatabaseHelper dbHelper=new DatabaseHelper(SQLiteActivity.this,"test_an_db");
                            SQLiteDatabase db=dbHelper.getWritableDatabase();
                            db.delete("user", "id=?", new String[]{"1"});
                            System.out.println("删除了:id=1");
                    }
                    
            }

            @Override
            public boolean onCreateOptionsMenu(Menu menu) {
                    // Inflate the menu; this adds items to the action bar if it is present.
                    getMenuInflater().inflate(R.menu.sqlite, menu);
                    return true;
            }

    }


    -------------------------------------------------------------------------
    package an.sqlite3.db;

    import android.content.Context;
    import android.database.sqlite.SQLiteDatabase;
    import android.database.sqlite.SQLiteDatabase.CursorFactory;
    import android.database.sqlite.SQLiteOpenHelper;

    //DatabaseHelper作为一个访问SQLite的助手类,提供两个方面的功能
    //第一,getReadableDatabase(),getWritableDatabase()可以获得SQLiteDatabase对象,通过该对象才可以对数据库进行操作
    //第二,提供了onCreate()和onUpgrade()两个回调函数,允许我们在创建和升级数据库时,进行自己的操作

    public class DatabaseHelper extends SQLiteOpenHelper {

            private static final int VERSION=1;
            //在SQLiteOpenHelper的子类中,必须有该构造函数
            public DatabaseHelper(Context context, String name, CursorFactory factory,
                            int version) {
                    //必须通过super调用父类中的构造函数
                    super(context, name, factory, version);
                    // TODO Auto-generated constructor stub
            }
            
            //调用了下面三个参数的构造函数
            public DatabaseHelper(Context context,String name){
                    this(context,name,VERSION);
            }
            
    //        调用了第一个四个参数的构造函数
            public DatabaseHelper(Context context,String name,int version){
                    this(context,name,null,VERSION);
            }
            
            //该函数是在第一次创建数据库的时候执行, 实际上是在第一次得到SQLiteDatabase对象的时候,才会调用这个方法
            @Override
            public void onCreate(SQLiteDatabase db) {
                    // TODO Auto-generated method stub
                    System.out.println("create a Database");
                    //execSQL函数用于执行SQL语句  (回调函数)
                    db.execSQL("create table user(id int,name varchar(20))");
            }
            @Override
            public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
                    // TODO Auto-generated method stub
                    System.out.println("update a Database");
            }

            
    }
    游戏开发
  • Android源码
  • 招聘
  • 学习路线图
 帖子
热搜:二维码定时器手电筒滑块斗地主书架定位买手机聊天游戏开发游戏股票查询机顶盒通话记录二维码扫描振动器listviewfragment音乐播放器播放器
eoe 移动开发者论坛»社区Android开发交流Android实例教程初学者的sqlite操作android数据库
返回列表发新帖回复
查看: 194|回复: 0
打印 上一主题 下一主题
收起左侧

[Android实例] 初学者的sqlite操作android数据库 

[复制链接]
mi.你

18

主题

33

帖子

604

e币
跳转到指定楼层
楼主
 发表于 2014-11-9 00:04:28 | 只看该作者 回帖奖励
package an.sqlite1;

import an.sqlite3.db.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.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;

public class SQLiteActivity extends Activity {

        private Button createDatabase;
        private Button updateDatabase;
        private Button insert;
        private Button update;
        private Button query;
        private Button delete;
        private Button deleteTable;
        
        @Override
        protected void onCreate(Bundle savedInstanceState) {
                super.onCreate(savedInstanceState);
                setContentView(R.layout.main);
                
                createDatabase=(Button)findViewById(R.id.createDatabase);
                createDatabase.setOnClickListener(new CreateListener());
                updateDatabase=(Button)findViewById(R.id.updateDatabase);
                updateDatabase.setOnClickListener(new UpdateListener());
                insert=(Button)findViewById(R.id.insert);
                insert.setOnClickListener(new InsertListener());
                update=(Button)findViewById(R.id.update);
                update.setOnClickListener(new UpdateRecordListener());
                query=(Button)findViewById(R.id.query);
                query.setOnClickListener(new QueryListener());
                delete=(Button)findViewById(R.id.delete);
                delete.setOnClickListener(new DeleteListener());
                deleteTable=(Button)findViewById(R.id.deleteTable);
                deleteTable.setOnClickListener(new DeleteTableListener());
        }
        
        class CreateListener implements OnClickListener{

                @Override
                public void onClick(View arg0) {
                        // TODO Auto-generated method stub
                        //创建一个DatabaseHelper对象
                        DatabaseHelper dbHelper=new DatabaseHelper(SQLiteActivity.this,"test_an_db");
                        //只有调用DatabaseHelper对象的getReadableDatabase()方法,或者是getWritableDatabase()方法,或者是getWritableDatabase()方法之后,才会创建数据库对象
                        SQLiteDatabase db=dbHelper.getReadableDatabase();
                }
                
        }
        
        class UpdateListener implements OnClickListener{

                @Override
                public void onClick(View v) {
                        // TODO Auto-generated method stub
                        DatabaseHelper dbHelper=new DatabaseHelper(SQLiteActivity.this,"test_an_db",2);
                        SQLiteDatabase db=dbHelper.getReadableDatabase();
                }
                
        }
        
        class DeleteTableListener implements OnClickListener{

                @Override
                public void onClick(View v) {
                        // TODO Auto-generated method stub
                        DatabaseHelper dbHelper=new DatabaseHelper(SQLiteActivity.this, "test_an_db");
                        SQLiteDatabase db=dbHelper.getReadableDatabase();
                        db.execSQL("DROP TABLE IF exists test_an_db");
                        System.out.println("删除了test_an_db表");
                }
                
        }
        
        class InsertListener implements OnClickListener{

                @Override
                public void onClick(View v) {
                        // TODO Auto-generated method stub
                        System.out.println("InsertListener");
                        //生成ContentValues对象,对数据库写操作
                        ContentValues values=new ContentValues();
                        //想该对象当中插入键值对,其中键是列名,值必须
                        values.put("id", 1);
                        values.put("name", "zhangsan");
                        DatabaseHelper dbHelper=new DatabaseHelper(SQLiteActivity.this, "test_an_db");
                        SQLiteDatabase db=dbHelper.getWritableDatabase();
                        //调用insert方法,就可以将数据插入到数据库当中
                        db.insert("user", null, values);                        
                }
                
        }
        
        //更新操作就想当用与SQL语句中的update语句
        //update table set xxx=xx where x=xxxx
        class UpdateRecordListener implements OnClickListener{

                @Override
                public void onClick(View v) {
                        // TODO Auto-generated method stub
                        System.out.println("UpdateRecordListener");
                        //得到一个可写的SQLiteDatabase对象
                        DatabaseHelper dbHelper=new DatabaseHelper(SQLiteActivity.this,"test_an_db");
                        SQLiteDatabase db=dbHelper.getWritableDatabase();
                        ContentValues values=new ContentValues();
                        values.put("name", "zhangsanfeng");
                        //第一个参数是要更新的表名,
                        //第二个参数是一个ContentValues对象
                        //第三个参数是where字句,不包括where  (?是占位符)
                        db.update("user", values, "id=?", new String[]{"1"});
                }
                
        }
        
        class QueryListener implements OnClickListener{

                @Override
                public void onClick(View v) {
                        // TODO Auto-generated method stub
                        System.out.println("QueryListener");
                        //得到一个可写的SQLiteDatabase对象
                        DatabaseHelper dbHelper=new DatabaseHelper(SQLiteActivity.this,"test_an_db");
                        SQLiteDatabase db=dbHelper.getReadableDatabase();
                        Cursor cursor=db.query("user", new String[]{"id","name"},"id=?",new String[]{"1"},null, null, null);
                        while(cursor.moveToNext()){
                                String name=cursor.getString(cursor.getColumnIndex("name"));
                                
                                System.out.println("query--->"+name);
                        }
                }
                
        }
        
        class DeleteListener implements OnClickListener{

                @Override
                public void onClick(View arg0) {
                        // TODO Auto-generated method stub
                        DatabaseHelper dbHelper=new DatabaseHelper(SQLiteActivity.this,"test_an_db");
                        SQLiteDatabase db=dbHelper.getWritableDatabase();
                        db.delete("user", "id=?", new String[]{"1"});
                        System.out.println("删除了:id=1");
                }
                
        }

        @Override
        public boolean onCreateOptionsMenu(Menu menu) {
                // Inflate the menu; this adds items to the action bar if it is present.
                getMenuInflater().inflate(R.menu.sqlite, menu);
                return true;
        }

}


-------------------------------------------------------------------------
package an.sqlite3.db;

import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteDatabase.CursorFactory;
import android.database.sqlite.SQLiteOpenHelper;

//DatabaseHelper作为一个访问SQLite的助手类,提供两个方面的功能
//第一,getReadableDatabase(),getWritableDatabase()可以获得SQLiteDatabase对象,通过该对象才可以对数据库进行操作
//第二,提供了onCreate()和onUpgrade()两个回调函数,允许我们在创建和升级数据库时,进行自己的操作

public class DatabaseHelper extends SQLiteOpenHelper {

        private static final int VERSION=1;
        //在SQLiteOpenHelper的子类中,必须有该构造函数
        public DatabaseHelper(Context context, String name, CursorFactory factory,
                        int version) {
                //必须通过super调用父类中的构造函数
                super(context, name, factory, version);
                // TODO Auto-generated constructor stub
        }
        
        //调用了下面三个参数的构造函数
        public DatabaseHelper(Context context,String name){
                this(context,name,VERSION);
        }
        
//        调用了第一个四个参数的构造函数
        public DatabaseHelper(Context context,String name,int version){
                this(context,name,null,VERSION);
        }
        
        //该函数是在第一次创建数据库的时候执行, 实际上是在第一次得到SQLiteDatabase对象的时候,才会调用这个方法
        @Override
        public void onCreate(SQLiteDatabase db) {
                // TODO Auto-generated method stub
                System.out.println("create a Database");
                //execSQL函数用于执行SQL语句  (回调函数)
                db.execSQL("create table user(id int,name varchar(20))");
        }
        @Override
        public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
                // TODO Auto-generated method stub
                System.out.println("update a Database");
        }

        
}
  • 游戏开发
  • Android源码
  • 招聘
  • 学习路线图
 帖子
热搜:二维码定时器手电筒滑块斗地主书架定位买手机聊天游戏开发游戏股票查询机顶盒通话记录二维码扫描振动器listviewfragment音乐播放器播放器
eoe 移动开发者论坛»社区Android开发交流Android实例教程初学者的sqlite操作android数据库
返回列表发新帖回复
查看: 194|回复: 0
打印 上一主题 下一主题
收起左侧

[Android实例] 初学者的sqlite操作android数据库 

[复制链接]
mi.你

18

主题

33

帖子

604

e币
跳转到指定楼层
楼主
 发表于 2014-11-9 00:04:28 | 只看该作者 回帖奖励
package an.sqlite1;

import an.sqlite3.db.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.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;

public class SQLiteActivity extends Activity {

        private Button createDatabase;
        private Button updateDatabase;
        private Button insert;
        private Button update;
        private Button query;
        private Button delete;
        private Button deleteTable;
        
        @Override
        protected void onCreate(Bundle savedInstanceState) {
                super.onCreate(savedInstanceState);
                setContentView(R.layout.main);
                
                createDatabase=(Button)findViewById(R.id.createDatabase);
                createDatabase.setOnClickListener(new CreateListener());
                updateDatabase=(Button)findViewById(R.id.updateDatabase);
                updateDatabase.setOnClickListener(new UpdateListener());
                insert=(Button)findViewById(R.id.insert);
                insert.setOnClickListener(new InsertListener());
                update=(Button)findViewById(R.id.update);
                update.setOnClickListener(new UpdateRecordListener());
                query=(Button)findViewById(R.id.query);
                query.setOnClickListener(new QueryListener());
                delete=(Button)findViewById(R.id.delete);
                delete.setOnClickListener(new DeleteListener());
                deleteTable=(Button)findViewById(R.id.deleteTable);
                deleteTable.setOnClickListener(new DeleteTableListener());
        }
        
        class CreateListener implements OnClickListener{

                @Override
                public void onClick(View arg0) {
                        // TODO Auto-generated method stub
                        //创建一个DatabaseHelper对象
                        DatabaseHelper dbHelper=new DatabaseHelper(SQLiteActivity.this,"test_an_db");
                        //只有调用DatabaseHelper对象的getReadableDatabase()方法,或者是getWritableDatabase()方法,或者是getWritableDatabase()方法之后,才会创建数据库对象
                        SQLiteDatabase db=dbHelper.getReadableDatabase();
                }
                
        }
        
        class UpdateListener implements OnClickListener{

                @Override
                public void onClick(View v) {
                        // TODO Auto-generated method stub
                        DatabaseHelper dbHelper=new DatabaseHelper(SQLiteActivity.this,"test_an_db",2);
                        SQLiteDatabase db=dbHelper.getReadableDatabase();
                }
                
        }
        
        class DeleteTableListener implements OnClickListener{

                @Override
                public void onClick(View v) {
                        // TODO Auto-generated method stub
                        DatabaseHelper dbHelper=new DatabaseHelper(SQLiteActivity.this, "test_an_db");
                        SQLiteDatabase db=dbHelper.getReadableDatabase();
                        db.execSQL("DROP TABLE IF exists test_an_db");
                        System.out.println("删除了test_an_db表");
                }
                
        }
        
        class InsertListener implements OnClickListener{

                @Override
                public void onClick(View v) {
                        // TODO Auto-generated method stub
                        System.out.println("InsertListener");
                        //生成ContentValues对象,对数据库写操作
                        ContentValues values=new ContentValues();
                        //想该对象当中插入键值对,其中键是列名,值必须
                        values.put("id", 1);
                        values.put("name", "zhangsan");
                        DatabaseHelper dbHelper=new DatabaseHelper(SQLiteActivity.this, "test_an_db");
                        SQLiteDatabase db=dbHelper.getWritableDatabase();
                        //调用insert方法,就可以将数据插入到数据库当中
                        db.insert("user", null, values);                        
                }
                
        }
        
        //更新操作就想当用与SQL语句中的update语句
        //update table set xxx=xx where x=xxxx
        class UpdateRecordListener implements OnClickListener{

                @Override
                public void onClick(View v) {
                        // TODO Auto-generated method stub
                        System.out.println("UpdateRecordListener");
                        //得到一个可写的SQLiteDatabase对象
                        DatabaseHelper dbHelper=new DatabaseHelper(SQLiteActivity.this,"test_an_db");
                        SQLiteDatabase db=dbHelper.getWritableDatabase();
                        ContentValues values=new ContentValues();
                        values.put("name", "zhangsanfeng");
                        //第一个参数是要更新的表名,
                        //第二个参数是一个ContentValues对象
                        //第三个参数是where字句,不包括where  (?是占位符)
                        db.update("user", values, "id=?", new String[]{"1"});
                }
                
        }
        
        class QueryListener implements OnClickListener{

                @Override
                public void onClick(View v) {
                        // TODO Auto-generated method stub
                        System.out.println("QueryListener");
                        //得到一个可写的SQLiteDatabase对象
                        DatabaseHelper dbHelper=new DatabaseHelper(SQLiteActivity.this,"test_an_db");
                        SQLiteDatabase db=dbHelper.getReadableDatabase();
                        Cursor cursor=db.query("user", new String[]{"id","name"},"id=?",new String[]{"1"},null, null, null);
                        while(cursor.moveToNext()){
                                String name=cursor.getString(cursor.getColumnIndex("name"));
                                
                                System.out.println("query--->"+name);
                        }
                }
                
        }
        
        class DeleteListener implements OnClickListener{

                @Override
                public void onClick(View arg0) {
                        // TODO Auto-generated method stub
                        DatabaseHelper dbHelper=new DatabaseHelper(SQLiteActivity.this,"test_an_db");
                        SQLiteDatabase db=dbHelper.getWritableDatabase();
                        db.delete("user", "id=?", new String[]{"1"});
                        System.out.println("删除了:id=1");
                }
                
        }

        @Override
        public boolean onCreateOptionsMenu(Menu menu) {
                // Inflate the menu; this adds items to the action bar if it is present.
                getMenuInflater().inflate(R.menu.sqlite, menu);
                return true;
        }

}

0 0
原创粉丝点击