Обновите существующие данные, используя DataRow C #

StackOverflow https://stackoverflow.com/questions/1226318

  •  22-07-2019
  •  | 
  •  

Вопрос

Мне нужно обновить существующие данные в базе данных 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

Для обновления требуется допустимая команда UpdateCommand при передаче коллекции DataRow с измененными строками

Да, я перемещаю AccesptChange () после обновления, но теперь выдает эту ошибку

Для обновления требуется допустимая команда UpdateCommand при передаче коллекции DataRow с измененными строками

Но теперь проблема в том, что я использую MySQL и не могу Wrie UpdateCommand, VS2008 не принимает команду SQL. Автоматически удалить все команды SQL. Я не понимаю проблемы. Так что вы теперь по-другому без использования команды SQL (UpdateCommand)?

Другие советы

Я думаю, что проблема в том, что вы вызываете DataRow.AcceptChanges () перед вызовом DbDataAdapter.Update (). AcceptChanges установит статус datarow на «orignal». (или «не изменен» - я сейчас не помню). Попробуйте переместить вызов в AcceptChanges после обновления.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top