0

ADO.Net を介して VB2010 Express にデータベース接続を追加するためのソース コードを教えてください。データベースフィールドを追加、更新、削除、取得、変更するためのすべてのコマンドが含まれています。ソースコード付きの小さなプロトタイプの作業モデルを誰かが提供してくれると本当に助かります。

4

1 に答える 1

0

ADO.NET は多かれ少なかれ SQL クエリ ベースです。したがって、CRUD (作成、読み取り、更新、削除) 操作については、SQL 言語を参照してください (使用しているデータベースによっては、クエリ構文に多少の違いがある場合があります)。

接続は、名前空間からIDbConnectionIDbCommandIDbDataAdapterIDbDataParameterおよびIDbTransactionインターフェイスを実装する特殊なプロバイダー エンティティを使用します。System.Data

さまざまなデータベース プロバイダーがあります (たとえば、Microsoft SQL Server、Oracle、mySQl、OleDb、ODBC など)。それらの一部は .NET Framework (MSSQL=System.Data.SqlClient名前空間、OleDb= System.Data.OleDb、ODBC=System.Data.Odbc名前空間) によってネイティブにサポートされていますが、外部ライブラリを介して追加する必要があるものもあります (必要に応じて、独自のデータベース プロバイダーを作成することもできます)。

IDBCommand オブジェクト (System.Data.SqlClient.SqlCommandオブジェクトなど) を使用すると、SQL コマンドを定義できます。

役立つかもしれない小さなサンプル スニペットを次に示します。

Public Class Form1

   Sub DBTest()

      '** Values to store the database values in
      Dim col1 As String = "", col2 As String = ""

      '** Open a connection (change the connectionstring to an appropriate value 
      '** for your database or load it from a config file)
      Using conn As New SqlClient.SqlConnection("YourConnectionString")
         '** Open the connection
         conn.Open()
         '** Create a Command object
         Using cmd As SqlClient.SqlCommand = conn.CreateCommand()
            '** Set the command text (=> SQL Query)
            cmd.CommandText = "SELECT ID, Col1, Col2 FROM YourTable WHERE ID = @ID"
            '** Add parameters
            cmd.Parameters.Add("@ID", SqlDbType.Int).Value = 100 '** Change to variable
            '** Execute the value and get the reader object, since we are trying to
            '** get a result from the query, for INSERT, UPDATE, DELETE use 
            '** "ExecuteNonQuery" method which returns an Integer
            Using reader As SqlClient.SqlDataReader = cmd.ExecuteReader()
               '** Check if the result has returned som results and read the first record
               '** If you have multiple records execute the Read() method until it returns false 
               If reader.HasRows AndAlso reader.Read() Then
                  '** Read the values of the current columns
                  col1 = reader("col1")
                  col2 = reader("col2")
               End If
            End Using
         End Using

         Debug.Print("Col1={0},Col2={1}", col1, col2)
         '** Close the connection
         conn.Close()
      End Using
   End Sub
End Class
于 2012-06-13T09:52:07.180 に答える