gpt4 book ai didi

c# - 如何替换 SQLite 表中的数据 - Android C# Xamarin

转载 作者:行者123 更新时间:2023-11-30 21:58:54 25 4
gpt4 key购买 nike

我正在努力做到这一点,以便我可以在 SQLite 表中编辑数据,但它给了我错误。我想要做的是单击“编辑”按钮,并使用警报对话框中的新字符串编辑已显示在 ListView 中的数据。

更新/编辑代码:

public void UpdateNote(String note)
{
SQLiteDatabase db = this.WritableDatabase;
db.Replace(DB_TABLE, DB_COLUMN + " = ?", new String[] { note });
db.Close();
}

这将从警报对话框肯定按钮调用。

我收到的错误: enter image description here

更新 1:

自定义适配器:

 btnEdit.Click += delegate
{

string noteOld = noteList[position];

mainActivity.UpdateNote(noteOld);
//reload data
mainActivity.LoadNoteList();
};

上面调用 MainActivity:

public void UpdateNote(String noteOld)
{
string oldNote = noteOld;
noteEditText = new EditText(this);
noteEditText.Text = oldNote;
noteEditText.SetLines(5);
noteEditText.SetTextColor(Color.Black);
noteEditText.SetBackgroundColor(Color.White);
noteEditText.SetMaxLines(5);
//noteEditText.SetGravity(Gravity.Top);
alert = new AlertDialog.Builder(this);
alert.SetTitle("Edit Note");
alert.SetMessage("");
alert.SetView(noteEditText);
alert.SetPositiveButton("Save", UpdateOkAction);
alert.SetNegativeButton("Cancel", CancelAction);
alert.Create();
alert.Show();

}

调用 MainActivity 方法:

 public void UpdateOkAction(object sender, DialogClickEventArgs e)
{
string noteNew = noteEditText.Text;
dbHelper.UpdateNote(oldNote);
LoadNoteList();
}

然后转到 DbHelper.cs:

public void UpdateNote(String noteNew)
{

SQLiteDatabase db = this.WritableDatabase;
ContentValues values = new ContentValues();
values.Put("Note", noteNew); // Column name and value respectively
db.Update(DB_TABLE, values, DB_COLUMN + " = ?", new String[] { noteNew });
}

我无法将 noteNew 和 oldNote 都解析到 DbHelper 以替换数据。

最佳答案

public void UpdateNote(String note)
{
SQLiteDatabase db = this.WritableDatabase;

dataToInsert.put(YOUR_COLUMN_NAME_HERE, note); // Column name and value respectively


String[] whereArgs = new String[] {String.valueOf(id)};

db.update(DB_TABLE, dataToInsert, "id=?", whereArgs);
}

关于c# - 如何替换 SQLite 表中的数据 - Android C# Xamarin,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44103901/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com