2009-04-04 4 views
0

私のC#プロジェクトでは、DataTableのDataGridに値を設定しました。今私は、DataGridの値を変更する場合、私はそれらをデータベースで更新する必要があります。私はMSアクセスを使用しています。 DataGridに値を入力するコードスニペットを次に示します。データベース内のdataGridを更新する方法

    while (myReader.Read()) 
       { 
        frmBind.dr = frmBind.dtResults.NewRow(); 
        frmBind.dr["ClassName"] = myReader.GetString(0); 

        frmBind.dr["MethodSignature"] = myReader.GetString(1); 

        frmBind.dr["ParameterValues"] = myReader.GetString(2); 
        frmBind.dr["ExpectedResults"] = myReader.GetString(3); 


        frmBind.dtResults.Rows.Add(frmBind.dr); 

       } 

       frmBind.dataGrid2.DataSource = frmBind.dtResults; 

、 dtResultsがデータテーブルであり、 frmBindがクラスオブジェクトである、 dataGrid2は、データベースから値を取得するために使用されるデータグリッド、 myReader.Readは()です。

答えて

1

データレアを削除することをお勧めします。

SQLDataSourceをページにドラッグし、クエリで構成します。コードを書くことなく、読んだり更新したりすることができます。

+0

いいえ、OPはアクセスと(おそらく)WinFormsを使用しています。 –

+0

私の謝罪 - ヘンクは正しいです。私はDataGridを見て、GridViewを考えました。最近、あまりにも多くのWebFormをやっていました。 – RichardHowells

1

簡単な方法は、使用しているADOプロバイダに応じて、xxx​​ADapterを使用することです。

ドラッグアンドドロップを使用しない理由があるかどうかを確認してください(少なくともスターター用)。 ここにいくつかのuseful videosがあります。まず、データセットに関するものを確認してください。

xxxコマンドを使用して実行する場合は、InsertCommand、UpdateCommand、およびDeleteCommandが必要です。行全体を繰り返し、RowStateをチェックします。 RowState == DataRowState.Addedの場合は、InsertCommandなどを使用してください。

最初にdtchanged = dtResults.GetChanges()を使用して便利な場合があります。

関連する問題