私はメソッドを使用してデータベースを更新しようとしていますが、SQLステートメントを使用するのではなく、メソッドのパラメータが使用されます。私はこれを行ってユーザーが情報をデータベースに入力できるようにしました。.netでのデータベースメソッドの更新
System.Data.OleDb.OleDbConnection con;
DataSet dsl;
System.Data.OleDb.OleDbDataAdapter da;
public String updateDatabase(int id, String Fname, String Lname, int age, string job)
{
con = new System.Data.OleDb.OleDbConnection();
con.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\\Users\\Owner\\Documents\\CIS3052.mdb";
dsl = new DataSet();
da = new System.Data.OleDb.OleDbDataAdapter();
con.Open();
DataRow dRow = dsl.Tables["Employee"].NewRow();
dRow["ID"] = id;
dRow["Fname"] = Fname;
dRow["Lname"] = Lname;
dRow["Age"] = age;
dRow["Job"] = job;
dsl.Tables["Employee"].Rows.Add(dRow);
da.Update(dsl, "Employee");
return null;
}
私が持っている問題は、この行である:それは私に言っている
DataRow dRow = dsl.Tables["Employee"].NewRow();
:
オブジェクト参照がオブジェクトインスタンスに設定されていません。
私はda.Fill()
を使用しようとしましたが、SQLステートメントを使用せずに使用する方法が見つかりません。
ありがとうございました。
SQLインサートを使用する必要がある場合、プリセットデータを追加するのではなく、メソッドのパラメータを受け入れるためのステートメントをどのようにしますか。 – Dumingu
http://msdn.microsoft.com/en-us/library/yy6y35y8.aspxコマンドテキストには、プロシージャまたはSQL文を格納できます。 SQL文の場合、すべてのパラメータはSQL文で@で定義する必要があります。 var SQL = "update myTable Set myColumn = @columevalue"。これで、@columevalueを持つコマンドオブジェクトにsqlパラメータを追加する必要があります。 – Mahesh