Datarow C#을 사용하여 데이터 업데이트가 있습니다.
문제
MySQL 데이터베이스에서 존재하는 데이터를 업데이트해야합니다.
나는이 코드처럼 씁니다.
String _id = lbID.Text;
dsrm_usersTableAdapters.rm_usersTableAdapter _t = new dsrm_usersTableAdapters.rm_usersTableAdapter();
dsrm_users _mds = new dsrm_users();
_mds.EnforceConstraints = false;
dsrm_users.rm_usersDataTable _m = _mds.rm_users;
_t.FillBy4(_m, _id);
if(_m.Rows.Count >0 )
{
DataRow _row = _m.Rows[0];
_row.BeginEdit();
_row["username"] = txtUserName.Text;
_row.EndEdit();
_row.AcceptChanges();
_t.Update(_m);
}
그러나 내 존재를 바꾸는 것은 없습니다. 문제는 무엇입니까?
해결책 2
업데이트는 수정 된 행이있는 Datarow 컬렉션을 통과 할 때 유효한 UpdateCommand가 필요합니다.
예, 업데이트 후 AccesptChange ()를 움직입니다. 이제이 오류가 발생합니다.
업데이트는 수정 된 행이있는 Datarow 컬렉션을 통과 할 때 유효한 UpdateCommand가 필요합니다.
그러나 이제 문제는 MySQL을 사용하고 업데이트 커뮤니케이션을 정지시킬 수 없으며 vs2008은 SQL 명령을 수락하지 않습니다. 모든 SQL 명령을 자동으로 삭제합니다. 나는 문제를 이해하지 못한다. SQL 명령 (updateCommand)을 사용하지 않고 다른 방법으로?
다른 팁
문제는 dbdataadapter.update ()를 호출하기 전에 datarow.acceptchanges ()를 호출한다는 것입니다. acceptChanges는 Datarow의 상태를 "Orignal"(또는 "변경되지 않음" - 지금 기억하지 않습니다). 업데이트 후 호출을 수락하기 위해 호출을 옮기십시오.
제휴하지 않습니다 StackOverflow