• 安卓开发之sql语句增删改查


    package com.lidaochen.phonecall;
    
    import android.content.Context;
    import android.database.sqlite.SQLiteDatabase;
    import android.database.sqlite.SQLiteOpenHelper;
    
    public class MyOpenHelper extends SQLiteOpenHelper {
    
        /**
         *
         * @param context  上下文
         * name:数据库的名字
         * factory 目的创建cursor对象
         *
         * version 数据库的版本   从1开始
         */
        public MyOpenHelper(Context context)
        {
            super(context, "liDaochen.db", null, 4);
        }
    
        /**
         * Called when the database is created for the first time.
         * 当数据库第一次创建的时候调用
         * 那么这个方法特别适合做表结构的初始化  创建表就是写sql语句
         */
        @Override
        public void onCreate(SQLiteDatabase db)
        {
            // id 一般以_id
            db.execSQL("create table info(_id integer primary key autoincrement,name varchar(20),phone varchar(20))");
        }
    
        /**
         * Called when the database needs to be upgraded
         * 当数据库版本升级的时候调用
         *
         * 这个方法适合做   表结构的更新
         */
        @Override
        public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVwesion)
        {
            db.execSQL("alter table info add phone varchar(20)");
        }
    }
    package com.lidaochen.phonecall;
    
    import android.database.Cursor;
    import android.database.sqlite.SQLiteDatabase;
    import android.support.v7.app.AppCompatActivity;
    import android.os.Bundle;
    import android.view.View;
    
    public class MainActivity extends AppCompatActivity{
        private MyOpenHelper myOpenHelper;
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
            myOpenHelper = new MyOpenHelper(getApplicationContext());
    
        }
    
        // 打开或者创建数据库 如果是第一次就创建
        // SQLiteDatabase db = myOpenHelper.getWritableDatabase();
        // 打开或者创建数据库 如果是第一次就创建 如果磁盘满了就返回只读的
        // SQLiteDatabase sqLiteDatabase = myOpenHelper.getReadableDatabase()
    
        // 点击按钮增加一条记录
        public void add(View v)
        {
            // 获取数据库对象
            SQLiteDatabase db = myOpenHelper.getWritableDatabase();
            // 执行增加一条sql语句
            db.execSQL("insert into info(name,phone) values(?,?)", new Object[]{"张三", "13888888"});
            // 数据库用完需要关闭
            db.close();
        }
        // 删除
        public void delete(View v)
        {
            // 获取数据库对象
            SQLiteDatabase db = myOpenHelper.getWritableDatabase();
            // 执行删除一条sql语句
            db.execSQL("delete from info where name=?", new Object[]{"张三"});
            // 数据库用完需要关闭
            db.close();
        }
        // 更新
        public void update(View v)
        {
            // 获取数据库对象
            SQLiteDatabase db = myOpenHelper.getWritableDatabase();
            // 执行删除一条sql语句
            db.execSQL("update info set phone=? where name=? ", new Object[]{"138888888", "张三"});
            // 数据库用完需要关闭
            db.close();
        }
        // 查找
        public void find(View v)
        {
            // 获取数据库对象
            SQLiteDatabase db = myOpenHelper.getWritableDatabase();
            Cursor cursor = db.rawQuery("select * from info", null);
            if (cursor != null && cursor.getCount() > 0)
            {
                while (cursor.moveToNext())
                {
                    // columnIndex代表列的索引
                    String name = cursor.getString(1);
                    String phone = cursor.getString(2);
                    System.out.println(name + ": " + phone);
                }
            }
        }
    }
  • 相关阅读:
    学习笔记4
    学习笔记2
    学习笔记1
    树莓派与Arduino串口通信
    团队大作业第三周周报
    团队大作业第二周周报
    团队大作业第一周周报
    RTCSD_第三次作业
    RTCSD_第二次作业
    RTCSD_第一次作业
  • 原文地址:https://www.cnblogs.com/duxie/p/10910075.html
Copyright © 2020-2023  润新知