0

.Net ドライバーを使用して Mysql に接続された winforms アプリケーションがあります。すべてのデータベース機能を処理するクラスを作成しました。mysql からバインドするためのクエリ結果を格納するために dataTable を使用します。

Imports MySql.Data.MySqlClient
Imports System.IO

Public Class MysqlConSjC

Private conn As MySqlConnection
Private connStr As String
Public strace As String
Private status As Integer

'status member variable for connectivity. 0 for success, 
'value of one indicates db connection error
'value of 2 indicates query failure

Private comd As MySqlCommand
Private adpter As MySqlDataAdapter
Private dta As DataTable

Public Sub Query(ByVal SQl As String)

    Try
        comd.Connection = conn
        comd.CommandText = SQl
        adpter.SelectCommand = comd
        adpter.Fill(dta)
        status = 0

    Catch ex As MySqlException
        strace = ex.StackTrace()
        DisconnectMysql()
        status = 2

    End Try
   End Sub

このメソッドは選択クエリを実行します。データベース内の DataTable の行を挿入/更新/削除するメソッドを作成するにはどうすればよいですか?

4

2 に答える 2

0

最も賢明なことをしました。バインディングソース管理に切り替え、tableAdaptersを使用して更新しました。私のようなクラスは、datagridviewsが必要ない場所で機能します

于 2012-04-28T23:40:32.237 に答える
0

プロバイダーが特定のコマンドの更新ステートメント (UPDATE、INSERT、DELETE) を作成できた場合Update、DataTable を更新した後、データ アダプターでメソッドを呼び出すだけでよいと思います。

adapter.Update(dta)

DataTable オブジェクトは、それ自体に加えられた変更を追跡します。次に、データ アダプター オブジェクトはその情報を使用して、実行する SQL ステートメント (UPDATE、INSERT、DELETE) を決定します。

于 2012-04-26T14:56:32.250 に答える