更新/删除/插入DataGridView

时间:2012-05-02 09:40:05

标签: c# dbcommand

我从DbConnection创建了一个DbDataAdapter,填充了DataTable,并将其放入DataGridView。

当我在DataGridView中添加/插入/删除数据时,我想保存它并更新数据库。

我到底要做什么?

(我自己创建了DbCommands; Update-command的一个例子(它是否正确?):

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 个答案:

答案 0 :(得分:1)

CreateParameter方法仅创建SqlParameter实例,但不会将参数添加到SqlCommand。您必须使用updateCmd.Parameters.Add方法将参数添加到命令中。

相关问题