精华内容
下载资源
问答
  • android 增删改查

    2014-09-05 10:39:34
    android 增删改查
  • Android增删改查

    2019-01-16 15:44:50
    此源码主要讲述了Android数据库的增删改查操作,并拓展了Android的SoundPool声音装载.可以跟进一步对Android进行了解
  • 安卓增删改查

    2018-12-21 08:24:29
  • 安卓增删改查的实现

    2015-09-20 16:02:07
    Android增删改查的实现,以及List列表的实现 !
  • android增删改查样例

    2013-11-18 15:18:09
    这是一个android增删改查的一个小功能样例,初学者可以看看
  • 这是一个android增删改查的例子,前后台全部都有了,安装上直接使用
  • Android增删改查小Demo

    2015-07-10 15:05:23
    本来是做Java后台开发的,公司这段时间让我们自学点Android,花了一段时间学习基础,现在写了一个增删改查的小Demo,有兴趣的朋友可以下载看看,有APK和项目源码
  • android sqllite 增删改查

    2017-01-12 14:51:01
    android sqllite 增删改查
  • get post put delete 怎么增删改查在jsp页面中如何进行增删改查操作的程序代码用 scriptlet 就可以了 建议你把这些 CRUD 的操作写到 Servlet 内 会比较 方便`mybatis的crud是什么意思my batis crud 我长的增删改查...

    有什么增删改查代码生成器可以推荐?

    get post put delete 怎么增删改查

    在jsp页面中如何进行增删改查操作的程序代码

    2b236536ccabd2523a1b5c61c5a1ebf4.png

    用 scriptlet 就可以了 建议你把这些 CRUD 的操作写到 Servlet 内 会比较 方便`

    mybatis的crud是什么意思

    my batis crud 我长的增删改查

    java web 中连接数据库并在HTML上进行增删改查

    ODBC 连接数据库也不分J2EE ,JSEE啊????? 无论是J2EE还是JSEE都可以用ODBC连接数据库埃 区别是有的, J2EE是做Web程序的,他面对的是大量的用户同时访问服务器而且可能同时操作数据库,如果你使用ODBC连接数据库。

    欢迎来到CSS布局HTML 我们也是要用MY SQL实现数据库的增删改查

    如果您有时间的话可不可以留个联系方式 帮我一下0 0 我就只会建数据库 一、-数据库创建- 想要对数据库进行增删改查,首先要创建一个数据库,安卓中的数据库是使用sqlite,我们是通过调用SQLiteOpenHelper类来进行数据库的创建的和操作的。 [java] view plain copy print?在CODE上查看代码片派生到我的代码片pack

    J2EE增删改查的问题,在没有配置事务的情况下,我...配置事务后,就没错了。请问各位大神,往数据库里存数据一定要在事务下保存就是增加吧,增删改查,除了查询不需要启事务以外,任何对数据库的操作,都需要借助事务来完成,事务是访问数据库的一个操作序列。

    java在access数据库下实现增删改查

    我这里已经设计了一个简单的用户界面,在事件处理上不知道怎么完成,同import java.sql.*; public class Main { public static void main(String[] args) throws ClassNotFoundException { Connection con; Statement sql; ResultSet rs; con = null; try { String ur1="jdbc:odbc:Driver={Microsoft Access Driver

    现在有一个界面,一个数据库,实现的功能是界面与

    这个界面能够输出(文字、图片之类的)

    界面后台能够连接数据库(crud操作) 实现上面两点就可以实现了。 测试用例建议先做模块单体测试,输入数据 要涵盖所有情况。单体测试之后集成测试。输入大量数据 然后通过脚本测试。

    展开全文
  • Android增删改查通讯录

    2012-09-12 11:26:36
    通讯录应用是Android自带的应用程序,我们看到此应用的时候,可能只认为这是一个应用,用数据库存储数据,但是实际上不是这样的。 通讯录是ContentProvider的应用,通讯录由两部分组成: (1)...


    一、通讯录应用介绍

    通讯录应用是Android自带的应用程序,我们看到此应用的时候,可能只认为这是一个应用,用数据库存储数据,但是实际上不是这样的。
    通讯录是ContentProvider的应用,通讯录由两部分组成:
    (1)com.android.providers.contacts的ContentProvider:真正存储数据的ContentProvider
    (2)com.android.contacts:运用ContentResolver获取数据的图形用户界面;

    二、获取ContactProvider的源代码

    Android源代码:   http://my.oschina.net/zhanglubing/blog/40623 用git获取;
    如果要获取ContactProvider,则安装git,并打开git bash,输入
    git clone https://android.googlesource.com/platform/packages/providers/ContactsProvider.git 即可;
    目录结构如下:

    为何要获取ContactProvider的源代码呢?
    因为如果要访问ContentProvider,必须要了解URI的设置(authority,path等);只有查看源代码才能够知道;
    AndroidManifest.xml为清单文件,列出了ContactProvider的authorities,以及要访问通讯录需要的权限;
    [html] 
    <uses-permission android:name="android.permission.READ_CONTACTS" /> 
    <uses-permission android:name="android.permission.WRITE_CONTACTS" /> 

    主要的通讯录程序为ContactsProvider2.java,authorities为:contacts或com.android.contacts;

    三、通讯录数据库结构介绍

    表结构如下:

     



    通讯录是存放在/data/data/com.android.providers.contacts/databases/contacts2.db,里面主要的表有:
    (1)raw_contacts:存放联系人的ID,
    _id属性为主键,声明为autoincrement,即不需要手动设置,其他属性也不需要手动设置就有默认值;
    display_name属性为姓名;
    (2)mimetypes:存放数据的类型,比如"vnd.android.cursor.item/name"表示“姓名”类型的数据,"vnd.android.cursor.item/phone_v2"表示“电话”类型的数据;
    (3)data:存放具体的数据;
    raw_contact_id属性用来连接raw_contacts表,每条记录表示一个具体数据;我们主要的数据(email、phone等)都存放在data表;
    data1属性存放总数据;
    data2属性:
    -如果此记录存放姓名,则data2存放名;
    -如果此记录存放电话,则data2存放类型,比如手机、家电;
    -如果此记录存放组织,则data2存放类型,比如公司、其他;
    -如果此记录存放地址,则data2存放类型,比如住宅,单位等;

    四、对通信录做增删改查

    简单的说:对通讯录操作就是对一个普通的ContentProvider操作;

    1.Query

    (1)根据电话号码查询姓名

    [java] 
    //根据电话号码查询姓名(在一个电话打过来时,如果此电话在通讯录中,则显示姓名) 
        public void testReadNameByPhone(){ 
            String phone = "12345678"; 
            //uri=  content://com.android.contacts/data/phones/filter/# 
            Uri uri = Uri.parse("content://com.android.contacts/data/phones/filter/"+phone);     
            ContentResolver resolver = this.getContext().getContentResolver(); 
            Cursor cursor = resolver.query(uri, new String[]{Data.DISPLAY_NAME}, null, null, null); //从raw_contact表中返回display_name 
            if(cursor.moveToFirst()){ 
                Log.i("Contacts", "name="+cursor.getString(0)); 
            } 
        } 

    (2)查询所有的联系人


    [java] 
    //读取通讯录的全部的联系人 
    //需要先在raw_contact表中遍历id,并根据id到data表中获取数据 
    public void testReadAll(){ 
        //uri = content://com.android.contacts/contacts 
        Uri uri = Uri.parse("content://com.android.contacts/contacts"); //访问raw_contacts表 
        ContentResolver resolver = this.getContext().getContentResolver(); 
        Cursor cursor = resolver.query(uri, new String[]{Data._ID}, null, null, null);  //获得_id属性 
        while(cursor.moveToNext()){ 
            StringBuilder buf = new StringBuilder(); 
            int id = cursor.getInt(0);//获得id并且在data中寻找数据 
            buf.append("id="+id); 
            uri = Uri.parse("content://com.android.contacts/contacts/"+id+"/data"); //如果要获得data表中某个id对应的数据,则URI为content://com.android.contacts/contacts/#/data 
            Cursor cursor2 = resolver.query(uri, new String[]{Data.DATA1,Data.MIMETYPE}, null,null, null);  //data1存储各个记录的总数据,mimetype存放记录的类型,如电话、email等 
            while(cursor2.moveToNext()){ 
                String data = cursor2.getString(cursor2.getColumnIndex("data1")); 
                if(cursor2.getString(cursor2.getColumnIndex("mimetype")).equals("vnd.android.cursor.item/name")){       //如果是名字 
                    buf.append(",name="+data); 
                } 
                else if(cursor2.getString(cursor2.getColumnIndex("mimetype")).equals("vnd.android.cursor.item/phone_v2")){  //如果是电话 
                    buf.append(",phone="+data); 
                } 
                else if(cursor2.getString(cursor2.getColumnIndex("mimetype")).equals("vnd.android.cursor.item/email_v2")){  //如果是email 
                    buf.append(",email="+data); 
                } 
                else if(cursor2.getString(cursor2.getColumnIndex("mimetype")).equals("vnd.android.cursor.item/postal-address_v2")){ //如果是地址 
                    buf.append(",address="+data); 
                } 
                else if(cursor2.getString(cursor2.getColumnIndex("mimetype")).equals("vnd.android.cursor.item/organization")){  //如果是组织 
                    buf.append(",organization="+data); 
                } 
            } 
            String str = buf.toString(); 
            Log.i("Contacts", str); 
        } 

     

    2.Insert

    (1)一步一步添加数据


    [java] 
    //一步一步添加数据 
        public void testAddContacts(){ 
            //插入raw_contacts表,并获取_id属性 
            Uri uri = Uri.parse("content://com.android.contacts/raw_contacts"); 
            ContentResolver resolver = this.getContext().getContentResolver(); 
            ContentValues values = new ContentValues(); 
            long contact_id = ContentUris.parseId(resolver.insert(uri, values)); 
            //插入data表 
            uri = Uri.parse("content://com.android.contacts/data"); 
            //add Name 
            values.put("raw_contact_id", contact_id); 
            values.put(Data.MIMETYPE,"vnd.android.cursor.item/name"); 
            values.put("data2", "zdong"); 
            values.put("data1", "xzdong"); 
            resolver.insert(uri, values); 
            values.clear(); 
            //add Phone 
            values.put("raw_contact_id", contact_id); 
            values.put(Data.MIMETYPE,"vnd.android.cursor.item/phone_v2"); 
            values.put("data2", "2");   //手机 
            values.put("data1", "87654321"); 
            resolver.insert(uri, values); 
            values.clear(); 
            //add email 
            values.put("raw_contact_id", contact_id); 
            values.put(Data.MIMETYPE,"vnd.android.cursor.item/email_v2"); 
            values.put("data2", "2");   //单位 
            values.put("data1", "www.2cto.com"); 
            resolver.insert(uri, values); 
        } 

     作者:xiazdong

    (2)批量添加数据

    核心代码:
    (1)ContentProviderOperation operation = ContentProviderOperation.newInsert(uri).withValue("key","value").build();
    (2)resolver.applyBatch("authorities",operations);//批量提交


    [java] 
    <span style="font-size:18px;">public void testAddContactsInTransaction() throws Exception { 
            Uri uri = Uri.parse("content://com.android.contacts/raw_contacts"); 
            ContentResolver resolver = this.getContext().getContentResolver(); 
            ArrayList<ContentProviderOperation> operations = new ArrayList<ContentProviderOperation>(); 
            // 向raw_contact表添加一条记录 
            //此处.withValue("account_name", null)一定要加,不然会抛NullPointerException 
            ContentProviderOperation operation1 = ContentProviderOperation 
                    .newInsert(uri).withValue("account_name", null).build(); 
            operations.add(operation1); 
            // 向data添加数据 
            uri = Uri.parse("content://com.android.contacts/data"); 
            //添加姓名 
            ContentProviderOperation operation2 = ContentProviderOperation 
                    .newInsert(uri).withValueBackReference("raw_contact_id", 0) 
                    //withValueBackReference的第二个参数表示引用operations[0]的操作的返回id作为此值 
                    .withValue("mimetype", "vnd.android.cursor.item/name") 
                    .withValue("data2", "xzdong").build(); 
            operations.add(operation2); 
            //添加手机数据 
            ContentProviderOperation operation3 = ContentProviderOperation 
                    .newInsert(uri).withValueBackReference("raw_contact_id", 0) 
                    .withValue("mimetype", "vnd.android.cursor.item/phone_v2") 
                    .withValue("data2", "2").withValue("data1", "0000000").build(); 
            operations.add(operation3); 
            resolver.applyBatch("com.android.contacts", operations); 
        }</span> 

    3.Delete


    核心思想:
    (1)先在raw_contacts表根据姓名查出id;
    (2)在data表中只要raw_contact_id匹配的都删除;

    [java] 
    public void testDelete()throws Exception{ 
        String name = "xzdong"; 
        //根据姓名求id 
        Uri uri = Uri.parse("content://com.android.contacts/raw_contacts"); 
        ContentResolver resolver = this.getContext().getContentResolver(); 
        Cursor cursor = resolver.query(uri, new String[]{Data._ID},"display_name=?", new String[]{name}, null); 
        if(cursor.moveToFirst()){ 
            int id = cursor.getInt(0); 
            //根据id删除data中的相应数据 
            resolver.delete(uri, "display_name=?", new String[]{name}); 
            uri = Uri.parse("content://com.android.contacts/data"); 
            resolver.delete(uri, "raw_contact_id=?", new String[]{id+""}); 
        } 


    4.Update

    核心思想:
    (1)不需要更新raw_contacts,只需要更新data表;
    (2)uri=content://com.android.contacts/data 表示对data表进行操作;
    [java] 
    public void testUpdate()throws Exception{ 
        int id = 1; 
        String phone = "999999"; 
        Uri uri = Uri.parse("content://com.android.contacts/data");//对data表的所有数据操作 
        ContentResolver resolver = this.getContext().getContentResolver(); 
        ContentValues values = new ContentValues(); 
        values.put("data1", phone); 
        resolver.update(uri, values, "mimetype=? and raw_contact_id=?", new String[]{"vnd.android.cursor.item/phone_v2",id+""})  

     作者:xiazdong


    展开全文
  • 第三步:主要是对数据进行数据的增删改查操作,是基于DBelper类来操作。 public class DBManager { private SQLiteDatabase db; private DBHelper mDBHelper; private CourseDataBean course; public ...

    先看下运行结果

    1120651-20170516110207182-799866607.png

    1120651-20170516110217213-307551181.png

    1120651-20170516110224635-637136409.png

    长按会出现一个对话框

    1120651-20170516110733025-834676525.png

    第一步:把两个布局画好

    1120651-20170516110912557-622137078.png
    1120651-20170516111032353-529028267.png

    第二步:来看下代码部分(创建表、数据库)

    //创建数据库,创建表
    public class DBHelper extends SQLiteOpenHelper{
        private static final String DB="course.db";//数据库名
        private static final int V=1;//数据库版本
        public DBHelper(Context context, String name, SQLiteDatabase.CursorFactory factory, int version) {
            super(context, name, factory, version);
        }
        public DBHelper(Context context){
            super(context,DB,null,V);
            /**
             * 第一个参数:上下文
             * 第二个参数:数据库名
             * 第三个参数:创建数据库的工厂方法
             * 第四个参数:数据库版本
             * */
        }
        @Override
        //创建表
        public void onCreate(SQLiteDatabase sqLiteDatabase) {//表名:course                       字段:EditName String,teacher String,Xs String,Xf String
           sqLiteDatabase.execSQL("CREATE TABLE IF NOT EXISTS course(_id INTEGER PRIMARY KEY AUTOINCREMENT, EditName String,teacher String,Xs String,Xf String)");
        }
        @Override
        public void onUpgrade(SQLiteDatabase sqLiteDatabase, int i, int i1) {
        }
    }
    

    第二步:实体类用于承载数据

    public class CourseDataBean implements Serializable {
        private String editName;
        private String teacher, xs, xf;
        public String getEditName() {return editName;}
        public void setEditName(String editName) {
            this.editName = editName;
        }
        public String getTeacher() {
            return teacher;
        }
        public void setTeacher(String teacher) {this.teacher = teacher;}
        public String getXs() {
            return xs;
        }
        public void setXs(String xs) {
            this.xs = xs;
        }
        public String getXf() {
            return xf;
        }
        public void setXf(String xf) {
            this.xf = xf;
        }
    }

    第三步:主要是对数据进行数据的增删改查操作,是基于DBelper类来操作。

    public class DBManager {
        private SQLiteDatabase db;
        private DBHelper mDBHelper;
        private CourseDataBean course;
    
        public DBManager(Context context) {
            mDBHelper = new DBHelper(context);//实例化类
            db = mDBHelper.getWritableDatabase();//对数据进行操作
        }
    
        /**
         * 添加数据向CourseDataBean类中插入数据
         */
        public void addData(CourseDataBean course){
            db.beginTransaction();//开启事务
            try {
                db.execSQL("INSERT INTO course(editName, teacher, xs, xf) VALUES(?,?,?,?)",new Object[]{course.getEditName(),course.getTeacher(),course.getXs(),course.getXf()});
                db.beginTransaction();//事务成功
            }finally {
                db.endTransaction();//结束事务
            }
        }
        /**
         * 修改数据
         * ContentValues:是一个类
         */
        public void changeData(String oldCoureName ,String editName,String teacher,String xs,String xf){
            ContentValues cv=new ContentValues();//实例化类
            cv.put("editName",editName);//添加要更改的字段及内容
            cv.put("teacher",teacher);
            cv.put("xs",xs);
            cv.put("xf",xf);
            //执行修改
            db.update("course",cv,"editName=?",new String[]{oldCoureName});
        }
        /**
         * 通过name来删除数据
         */
        public void delData(String editName){
                String[] arg={editName};
            db.delete("course","editName=?",arg);
        }
        /**
         * 执行SQL命令返回list,
         *  ArrayList<CourseDataBean>集合
         */
        public  ArrayList<CourseDataBean> info() {
            //集合        泛型类
            ArrayList<CourseDataBean> list = new ArrayList<CourseDataBean>();
            //游标                   查询 全部字段在这张表中 第二个参数:查询的条件
            Cursor c = db.rawQuery("select * from course", null);
            while (c.moveToNext()) {
                //new一个对象
                course = new CourseDataBean();
                /**
                 * 从CourseDataBean读取数据,并且把数据放到course对象中
                 * c.getColumnIndex("courseName"):获取到CourseDataBean的值的下标
                 * c.getString(c.getColumnIndex("courseName")):获取到它的值
                 * */
                course.setEditName(c.getString(c.getColumnIndex("EditName")));
                course.setTeacher(c.getString(c.getColumnIndex("teacher")));
                course.setXs(c.getString(c.getColumnIndex("Xs")));
                course.setXf(c.getString(c.getColumnIndex("Xf")));
                list.add(course);
        }
            c.close();
            return list;
        }
        public void closeDB(){db.close();}
    }

    第四步:也是最后一步,就是对主布局进行写

    ~~~public class MainActivity extends AppCompatActivity implements View.OnClickListener {
    private Button btn_add;
    private EditText et_EditName;
    private ListView listView;
    private DBManager manager;
    private CourseDataBean bean;
    private DBHelper helper;
    private EditText dialogEditName, dialogEditTeacher, dialogEditXs, dialogEditXf;
    private Context context;
    private List datas;//集合
    private int position;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        context = MainActivity.this;
        manager = new DBManager(context);
        bean = new CourseDataBean();//实例化
        init();
    }
    
    private void init() {
        //主布局控件的实例化
        btn_add = (Button) findViewById(R.id.add);
        btn_add.setOnClickListener(this);
        et_EditName = (EditText) findViewById(R.id.EditName);
        listView = (ListView) findViewById(R.id.listView);
        //ListView的点击事件
        listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
            @Override
            public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) {
                AlertDialog.Builder builder = new AlertDialog.Builder(context);
                //创建对话框,添加一个布局
                View view1 = View.inflate(context, R.layout.layout, null);
                //承载对话框
                builder.setView(view1);
                position = i;
                //对话框中的控件的实例化
                dialogEditName = (EditText) view1.findViewById(R.id.dialog_EditName);
                dialogEditTeacher = (EditText) view1.findViewById(R.id.dialog_EditTeacher);
                dialogEditXf = (EditText) view1.findViewById(R.id.dialog_EditXf);
                dialogEditXs = (EditText) view1.findViewById(R.id.dialog_EditXs);
    
                //datas.get(i).getCourseName():从这个位置找到这个值赋给控件
                dialogEditName.setText(datas.get(i).getEditName());
                dialogEditTeacher.setText(datas.get(i).getTeacher());
                dialogEditXs.setText(datas.get(i).getXs());
                dialogEditXf.setText(datas.get(i).getXf());
                //取消
                builder.setNeutralButton("取消", new DialogInterface.OnClickListener() {
                    @Override
                    public void onClick(DialogInterface dialogInterface, int i) {
                        dialogInterface.dismiss();
                    }
                });
                //删除
                builder.setNegativeButton("删除", new DialogInterface.OnClickListener() {
                    @Override
                    public void onClick(DialogInterface dialogInterface, int i) {
                        //数据库调用这个方法,
                        manager.delData(dialogEditName.getText().toString());
                        Toast.makeText(MainActivity.this, "删除成功", Toast.LENGTH_SHORT).show();
                        //方法的作用:是为了显示到ListView列表上
                        adapter1();
                        //对话框退出
                        dialogInterface.dismiss();
                    }
                });
                //保存(修改)
                builder.setPositiveButton("保存", new DialogInterface.OnClickListener() {
                    @Override
                    public void onClick(DialogInterface dialogInterface, int i) {
                        //在这个集合中找到要修改的名字赋给name
                        String name = datas.get(position).getEditName();
                        //调用这个方法
                        manager.changeData(name, dialogEditName.getText().toString(), dialogEditTeacher.getText().toString(), dialogEditXs.getText().toString(), dialogEditXf.getText().toString());
                        adapter1();
                        dialogInterface.dismiss();
                    }
                });
                //创建数据库并show出来
                builder.create().show();
            }
        });
    }
    //添加
    @Override
    public void onClick(View view) {
        switch (view.getId()) {
            case R.id.add:
                CourseDataBean c = new CourseDataBean();//实例化对象
                //给对话框中的EditText控件赋值
                c.setEditName(et_EditName.getText().toString());
                c.setXf("默认");
                c.setXs("默认");
                c.setTeacher("默认");
                manager.addData(c);//添加到方法中
                Toast.makeText(MainActivity.this, "添加成功", Toast.LENGTH_SHORT).show();
                adapter1();
                break;
        }
    }
    
    private void adapter1() {
        datas = manager.info();//取出数据库里面胡数据
        //数据源//创建一个集合
        List<String> data = new ArrayList<>();
        for (int i = 0; i < datas.size(); i++) {
            data.add(datas.get(i).getEditName());
        }
        //创建一个数据库
        ArrayAdapter<String> adapter = new ArrayAdapter<String>(context, android.R.layout.simple_expandable_list_item_1, data);
        //与ListView列表绑定并将数据加载到列表上
        listView.setAdapter(adapter);
    }

    }
    ~~~

    结束啦!!!

    转载于:https://www.cnblogs.com/zyl222/p/6860413.html

    展开全文
  • android数据库增删改查

    热门讨论 2011-12-06 15:08:51
    实现android的数据库的增删改查,利用sqlite实现数据库的基本功能
  • Android Room增删改查

    万次阅读 2018-11-23 14:27:29
    在上篇文章中我们说了Room的搭建跟简单的增删改查,如果还有不明白的可以查看上篇文章 Android Room数据库的使用 这篇文章主要是讲一下Room在实际项目中的应用,在项目中,我们对数据库不可能只是进行简单的增删改查,...
  • Android 数据库 sqlite 数据库增删改查 demo
  • 现在使用Android Studio开发一个简单的应用,该应用就实现了增删改查的操作,看似简单,到底简不简单呢,下面开始操作。本文的功能为了简便,增删改查在一个页面实现;为了简便,activity里面写原生的代码,不使用...
  • 使用SQLite数据库 实现的Android增删改查小例子,可运行起来
  • android登录注册增删改查
  • 安卓sqlite的增删改查

    2015-05-09 09:20:47
    一个完整的安卓sqlite,对数据增删改查的demo.欢迎下载。
  • import android.content.Context; import android.database.sqlite.SQLiteDatabase; import android.database.sqlite.SQLiteOpenHelper; /** * Created by jhl on 2017/6/22. */ public class MyHelper extends ...
  • Android的Realm数据库增删改查实例,
  • 安卓sqllit增删改查

    2016-11-12 23:06:46
    sqlite增删改查完整例子。没有没用代码,完全干货。
  • Android数据库增删改查

    万次阅读 2019-01-16 16:03:00
    在我们Android开发中我们少不了对Android的数据库进行操作,今天做了一个完整的增删改查Demo,还装载了SoundPool作为提示音以及简单的自定义View。 话不多说我们直接看代码 这里我直接使用了简单4个按钮然后去执行...
  • Androidsqlite增删改查的基本使用,事务处理,sqlite异步线程中使用支持同步读不支持同步写问题的处理
  • android数据库database增删改查功能,该项目实现了Android SQLite数据库增删改查,通过点击“新建数据库”按钮来创建数据库,点击“添加”按钮来向数据库中加入一条数据,具体的如效果图所示。
  • android sqllite增删改查

    2016-12-19 12:00:50
    android sqllite增删改查,以前那个代码导入发现有错(http://download.csdn.net/detail/day_moon/9694831),所以改正了上传。
  • 参考视频写的,android中通过SQLite数据库增删改查分页统计总数
  • //获取当前的手机号public String getLocalNumber() {Context context = getApplicationContext();TelephonyManager tManager = (TelephonyManager)context.getSystemService(TELEPHONY_SERVICE);...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 29,876
精华内容 11,950
关键字:

安卓增删改查