安卓开发中怎么修改数据库中的数据

安卓开发中怎么修改数据库中的数据,第1张

public

class

DatabaseHelper

extends

SQLiteOpenHelper

{

private

static

DatabaseHelper

mInstance

=

null;

/

数据库名称

/

public

static

final

String

DATABASE_NAME

=

"xysdb";

/

数据库版本号

/

private

static

final

int

DATABASE_VERSION

=

1;

/数据库SQL语句

添加一个表/

private

static

final

String

NAME_TABLE_CREATE

=

"create

table

test("

+

"_id

INTEGER

PRIMARY

KEY

AUTOINCREMENT,"

+

"name

TEXT,"+"hp

INTEGER

DEFAULT

100,"+

"mp

INTEGER

DEFAULT

100,"

+

"number

INTEGER);";

DatabaseHelper(Context

context)

{

super(context,

DATABASE_NAME,

null,

DATABASE_VERSION);

}

/单例模式/

static

synchronized

DatabaseHelper

getInstance(Context

context)

{

if

(mInstance

==

null)

{

mInstance

=

new

DatabaseHelper(context);

}

return

mInstance;

}

@Override

public

void

onCreate(SQLiteDatabase

db)

{

/向数据中添加表/

dbexecSQL(NAME_TABLE_CREATE);

}

@Override

public

void

onUpgrade(SQLiteDatabase

db,

int

oldVersion,

int

newVersion)

{

/可以拿到当前数据库的版本信息

与之前数据库的版本信息

用来更新数据库/

}

/

删除数据库

@param

context

@return

/

public

boolean

deleteDatabase(Context

context)

{

return

contextdeleteDatabase(DATABASE_NAME);

}

}

public class MyDbOpenHeler extends SQLiteOpenHelper {

    private static final String name="zhoukedb";

    private static final int version=1;

    public MyDbOpenHeler(Context context) {

        super(context, name, null, version);

    }

    @Override

    public void onCreate(SQLiteDatabase db) {

        dbexecSQL("create table if not exists word(_id integer primary key autoincrement,name varchar(20),age int)");

    }

    @Override

    public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {

    }

}

------------------------------------------------

public class Main2Activity extends AppCompatActivity {

    ListView lv;

    MyDbOpenHeler heler;

    SQLiteDatabase db;

    SimpleCursorAdapter adapter;

    EditText et1;

    //通知

    NotificationManager manage;

    //---

    @Override

    protected void onCreate(Bundle savedInstanceState) {

        superonCreate(savedInstanceState);

        setContentView(Rlayoutactivity_main2);

        lv= (ListView) findViewById(Ridlv);

        //实例化数据库帮助类

        heler=new MyDbOpenHeler(this);

        //获取一个可读写的数据库 *** 作对象

        db=helergetWritableDatabase();

        Cursor word = dbquery("word", null, null, null, null, null, "_id desc");

        adapter=new SimpleCursorAdapter(this,Rlayoutlist_ltem,word,

                new String[]{"_id","name","age"},new int[]{Ridtv1,Ridtv2,Ridtv3},

                CursorAdapterFLAG_REGISTER_CONTENT_OBSERVER);

        lvsetAdapter(adapter);

//        if(wordisClosed()){

//            wordclose();

//        }

        registerForContextMenu(lv);

        //通知的实例化

        manage= (NotificationManager) getSystemService(NOTIFICATION_SERVICE);

        //---

        et1= (EditText) findViewById(Ridet1);

    }

    //创建选项菜单

    @Override

    public boolean onCreateOptionsMenu(Menu menu) {

        menuadd(1,1,0,"增");

        return superonCreateOptionsMenu(menu);

    }

    //选项菜单监听事件

    @Override

    public boolean onOptionsItemSelected(MenuItem item) {

        View inflate = Viewinflate(this, Rlayoutdialog, null);

        final EditText et1 = (EditText) inflatefindViewById(Ridet1);

        final EditText et2 = (EditText) inflatefindViewById(Ridet2);

        new AlertDialogBuilder(this)setTitle("增加新学生信息")setView(inflate)

                setPositiveButton("确认", new DialogInterfaceOnClickListener() {

                    @Override

                    public void onClick(DialogInterface dialog, int which) {

                        ContentValues cv=new ContentValues();

                        cvput("name",et1getText()toString());

                        cvput("age", et2getText()toString());

                        long word = dbinsert("word", null, cv);

                        if (word>0){

                            ToastmakeText(Main2Activitythis,"增加数据成功",ToastLENGTH_SHORT)show();

                            Cursor word2 = dbquery("word", null, null, null, null, null, "_id desc");

                            adapterchangeCursor(word2);

                            //通知---开始

                            NotificationCompatBuilder builder=new NotificationCompatBuilder(Main2Activitythis);

                            buildersetSmallIcon(Rdrawableaa)

                                    setContentText("年龄:"+et2getText()toString())

                                    setContentTitle(et1getText()toString())

                                    setAutoCancel(true);

                            managenotify(1,builderbuild());

                            //通知 --结束

                        }

                    }

                })setNegativeButton("取消", new DialogInterfaceOnClickListener() {

            @Override

            public void onClick(DialogInterface dialog, int which) {

            }

        })show();

        return superonOptionsItemSelected(item);

    }

    //创建上下文菜单

    @Override

    public void onCreateContextMenu(ContextMenu menu, View v, ContextMenuContextMenuInfo menuInfo) {

        superonCreateContextMenu(menu, v, menuInfo);

        menuadd(1,2,0,"修改");

        menuadd(1,3,0,"删除");

    }

    //上下文菜单监听事件

    @Override

    public boolean onContextItemSelected(MenuItem item) {

        //获取当前点击项的索引

        AdapterViewAdapterContextMenuInfo info= (AdapterViewAdapterContextMenuInfo) itemgetMenuInfo();

        int position = infoposition;

        //根据索引获取这一行数据,把它转化为Cursor

        Cursor  cursor= (Cursor) adaptergetItem(position);

        //从结果集中取出id

        final int _id = cursorgetInt(0);

        switch (itemgetItemId()){

            case 2:

                View inflate = Viewinflate(this, Rlayoutdialog, null);

                final EditText et1 = (EditText) inflatefindViewById(Ridet1);

                final EditText et2 = (EditText) inflatefindViewById(Ridet2);

                //获取单词名称

                String name=cursorgetString(1);

                String age=cursorgetString(2);

                et1setText(name);

                et2setText(age);

                new AlertDialogBuilder(this)setTitle("修改学生信息")setView(inflate)

                        setPositiveButton("确认", new DialogInterfaceOnClickListener() {

                            @Override

                            public void onClick(DialogInterface dialog, int which) {

                                ContentValues cv=new ContentValues();

                                cvput("name",et1getText()toString());

                                cvput("age", et2getText()toString());

                                int word=dbupdate("word",cv,"_id=",new String[]{StringvalueOf(_id)});

                                if (word>0){

                                    ToastmakeText(Main2Activitythis,"修改数据成功",ToastLENGTH_SHORT)show();

                                    Cursor word2 = dbquery("word", null, null, null, null, null, "_id desc");

                                    adapterchangeCursor(word2);

                                }

                            }

                        })setNegativeButton("取消", new DialogInterfaceOnClickListener() {

                    @Override

                    public void onClick(DialogInterface dialog, int which) {

                    }

                })show();

                break;

            case 3:

                int word = dbdelete("word", "_id=", new String[]{StringvalueOf(_id)});

                if (word>0){

                    ToastmakeText(Main2Activitythis,"删除数据成功",ToastLENGTH_SHORT)show();

                    Cursor word2 = dbquery("word", null, null, null, null, null, "_id desc");

                    adapterchangeCursor(word2);

                }

                break;

        }

        return superonContextItemSelected(item);

    }

    public void click1(View view) {

        //模糊查询

        String aa=et1getText()toString();

        Cursor word2 = dbquery("word", null, "name like ", new String[]{"%"+aa+"%"}, null, null, "_id desc");

        adapterchangeCursor(word2);

        //正常查询

 //       Cursor word2 = dbquery("word", null, "name=", new String[]{aa}, null, null, "_id desc");

    }

}

以上就是关于安卓开发中怎么修改数据库中的数据全部的内容,包括:安卓开发中怎么修改数据库中的数据、android安卓数据库的增删改查和发送通知、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/sjk/9400640.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-28
下一篇2023-04-28

发表评论

登录后才能评论

评论列表(0条)

    保存