Android:数据存储之SQLite

Android在运行时集成了SQLite , 所以每个Android应用程序都可以使用SQLite数据库。

我们通过SQLiteDatabase这个类的对象操作SQLite数据库,而且不需要身份验证。

数据库存放的位置:data/data/<项目文件夹>/databases/,查看数据库>>

public class MainActivity extends Activity {
    private Button createDatabase, createTable, selectData, insertData,
            updateData, deleteDaata;
    private MySQLiteOpenHelper helper;

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

        // 初始化按钮
        createDatabase = (Button) findViewById(R.id.createDatabase);
        createTable = (Button) findViewById(R.id.createTable);
        selectData = (Button) findViewById(R.id.selectData);
        insertData = (Button) findViewById(R.id.insertData);
        updateData = (Button) findViewById(R.id.updateData);
        deleteDaata = (Button) findViewById(R.id.deleteDaata);
        
        
        helper = new MySQLiteOpenHelper(MainActivity.this, "mydb.db",
                null, 1);
        
        /*
         * 创建数据库
         */
        createDatabase.setOnClickListener(new OnClickListener() {
            @Override
            public void onClick(View v) {
                // TODO Auto-generated method stub
                SQLiteDatabase sqlitedatabase = helper.getWritableDatabase();
                Toast.makeText(MainActivity.this, "数据库创建成功", 1000).show();

            }

        });

        /*
         * 创建表
         */
        createTable.setOnClickListener(new OnClickListener() {

            public void onClick(View arg0) {
                // TODO Auto-generated method stub
                SQLiteDatabase sqlitedatabase = helper.getWritableDatabase();
                // 创建表
                sqlitedatabase
                        .execSQL("create table student(id INTEGER PRIMARY KEY autoincrement,name text)");
                Toast.makeText(MainActivity.this, "表创建成功", 1000).show();
            }
        });

        /*
         * 插入数据
         */

        insertData.setOnClickListener(new OnClickListener() {

            public void onClick(View v) {
                // TODO Auto-generated method stub
                SQLiteDatabase sqlitedatabase = helper.getWritableDatabase();
                sqlitedatabase
                        .execSQL("insert into student(name) values ('tinyphp')");
                Toast.makeText(MainActivity.this, "插入数据成功", 1000).show();
            }
        });

        /*
         * 更新数据
         */
        updateData.setOnClickListener(new OnClickListener() {

            @Override
            public void onClick(View v) {
                // TODO Auto-generated method stub
                SQLiteDatabase sqlitedatabase = helper.getWritableDatabase();
                sqlitedatabase
                        .execSQL("update student set name='monkey' where id='1'");
                Toast.makeText(MainActivity.this, "数据更新成功", 1000).show();
            }
        });

        /*
         * 查询数据
         */

        selectData.setOnClickListener(new OnClickListener() {

            @Override
            public void onClick(View v) {
                // TODO Auto-generated method stub
                SQLiteDatabase sqlitedatabase = helper.getReadableDatabase();
                
                //参数:表名、查询的列、查询条件、查询参数、查询结果分组、分组结果限制、排序
                Cursor cursor = sqlitedatabase.query("student", new String[] {
                        "id", "name" }, "id=?", new String[] { "1" }, null,
                        null, null);
                String name=null;
                while(cursor.moveToNext()){
                    name =cursor.getString(cursor.getColumnIndex("name"));                    
                }
                Toast.makeText(MainActivity.this, "查询结果name为:"+name, 1000).show();
            }
        });

        
        /*
         * 删除数据
         * */
                
        deleteDaata.setOnClickListener(new OnClickListener() {
            
            @Override
            public void onClick(View v) {
                // TODO Auto-generated method stub
                SQLiteDatabase sqlitedatabase =helper.getWritableDatabase();
                sqlitedatabase.delete("student", "id=?", new String[]{"1"});
                Toast.makeText(MainActivity.this, "数据删除成功", 1000).show();
            }
        });
        
    }
}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值