Обновить / Удалить / Вставить DataGridView

Я создал DbDataAdapter из DbConnection, заполнил DataTable и поместил его в DataGridView.

Когда я добавляю / вставляю / удаляю данные в DataGridView, я хочу сохранить их и обновить базу данных.

Что мне конкретно нужно сделать?

(Я сам создал DbCommands; пример команды Update (это правильно?):

DbCommand updateCmd = connection.CreateCommand();

DbParameter param1 = updateCmd.CreateParameter();
DbParameter param2 = updateCmd.CreateParameter();
DbParameter param3 = updateCmd.CreateParameter();

param1.Direction = ParameterDirection.Input;
param1.ParameterName = "@firstname";
param1.SourceColumn = "firstname";
param1.DbType = (DbType.String);

param2.Direction = ParameterDirection.Input;
param2.ParameterName = "@lastname";
param2.SourceColumn = "lastname";
param2.DbType = (DbType.String);

param3.Direction = ParameterDirection.Input;
param3.ParameterName = "@mail";
param3.SourceColumn = "mail";
param3.DbType = (DbType.String);
updateCmd.CommandText = "UPDATE Personen SET fistname=@firstname,lastname=@lastname,mail=@mail";    

dbAdapter.UpdateCommand = updateCmd;

Я думаю, кнопка "сохранить" имеет такой код:

adapt.Update(table);

Но я получаю ошибку:

Must declare the scalar variable "@firstname".

1 ответ

Решение

CreateParameter метод только создает SqlParameter экземпляр, но не добавляет параметр в SqlCommand, Вы должны добавить параметры в команду, используя updateCmd.Parameters.Add метод.

Другие вопросы по тегам