Em có làm form thêm, sửa, xóa trong C#.
Code:
private void btnSave_Click(object sender, EventArgs e)
{
if (txtFirstName.Text == "")
{
MessageBox.Show("Đề nghị nhập First Name", "Thông báo ..."); return;
}
if (txtLastName.Text == "")
{
MessageBox.Show("Đề nghị nhập Last Name", "Thông báo ..."); return;
}
if (modeNew)
{
string sSql = "INSERT INTO Authors(FirstName, LastName) VALUES " +
"(N'" + txtFirstName.Text + "',N'" + txtLastName.Text + "')";
mySqlCommand = mySqlConnection.CreateCommand();
mySqlCommand.CommandText = sSql;
mySqlCommand.ExecuteNonQuery();
}
else
{
string AuthorID = listView1.SelectedItems[0].SubItems[0].Text;
string sSql = "UPDATE Authors" +
"SET FirstName = N'" + txtFirstName.Text + "'," +
"LastName = N'" + txtLastName.Text + "'" +
"WHERE AuthorID = " + AuthorID;
//mySqlCommand = new SqlCommand(sSql, mySqlConnection);
mySqlCommand = mySqlConnection.CreateCommand();
mySqlCommand.CommandText = sSql;
mySqlCommand.ExecuteNonQuery();
}
SetControls(false);
Display();
}
Chức năng thêm mới và xóa thì đã chạy được và lưu được vào cơ sở dữ liệu rồi. Còn chức năng sửa thì nó cứ báo lỗi này: Incorrect syntax near 'FirstName'
tại dòng mySqlCommand.ExecuteNonQuery();
.
Em đang tìm hiểu nên trình đang non, sữa mãi mà cụng không biết lỗi thế nào, code hình như em thấy đúng rồi mà nó cứ báo lỗi em không hiểu sao
if(modeNew)
là thêm mới thì ok rồi ạ. còn
else {
string AuthorID = listView1.SelectedItems[0].SubItems[0].Text;
string sSql = "UPDATE Authors" +
"SET FirstName = N'" + txtFirstName.Text + "'," +
"LastName = N'" + txtLastName.Text + "'" +
"WHERE AuthorID = " + AuthorID;
//mySqlCommand = new SqlCommand(sSql, mySqlConnection);
mySqlCommand = mySqlConnection.CreateCommand();
mySqlCommand.CommandText = sSql;
mySqlCommand.ExecuteNonQuery();
}
Thì nó không lưu được khi mình nhấn nút Save mà báo lỗi ở trên ạ.
Em copy đoạn code
UPDATE Authors
SET FirstName = N'Huu',
LastName = N'Thuc'
WHERE AuthorID = 25
vào chạy trong sql server thì cập nhật sửa thành công.
Mong anh/chị xem hộ em với.