Обновить / Удалить / Вставить 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
метод.