SQLServerに接続する2
テンプレートを元にForm1を編集しSQLServerと接続の試験をします。

Form1の編集
テキストボックスを配置し、テストの接続結果を表示できるようにします。テキストボックスのプロパティに複数行のチェックを付けて状況をログ出力できるようにします。

Form1_Loadの編集
Form1の何もないところをダブルクリックしてあげるとLoadイベントの編集ができるようになるので下記の様に入力します。
Imports System.Data.SqlClient
Imports System.Text
Public Class Form1
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
TextBox1.Multiline = True
Dim sb As New StringBuilder
Try
Dim sql As String = "SELECT * FROM T_A"
Using Conn As New SqlConnection
Conn.ConnectionString =
("Data Source=192.168.0.3\SQLEXPRESS;" &
"Initial Catalog=testDB;" &
"User ID=user1;Password=user1")
Conn.Open()
Using cmd As New SqlCommand(sql)
cmd.Connection = Conn
cmd.CommandType = CommandType.Text
Using rd As SqlDataReader = cmd.ExecuteReader()
For i = 0 To rd.FieldCount - 1
sb.Append(rd.GetName(i) & " | ")
Next
sb.AppendLine()
While (rd.Read)
For i = 0 To rd.FieldCount - 1
sb.Append(rd.GetString(i) & " | ")
Next
sb.AppendLine()
End While
End Using
End Using
End Using
Catch ex As Exception
If ex.InnerException Is Nothing Then
sb.AppendLine("エラー:" & ex.GetType.ToString)
sb.AppendLine("エラー:" & ex.Message)
Else
sb.AppendLine("エラー:" & ex.GetType.ToString)
sb.AppendLine("エラー:" & ex.Message)
End If
End Tr
TextBox1.Text = sb.ToString
End Sub
End Class
エラーが発生
Imports文としてSqlQlientとTextを組み込みますが、コーディングするとエラーが発生しました。

NugetでSqlQlientを管理
どうやら .Net 6 ではSqlClientはNugetで管理する様ですのでソリューションエクスプローラで「Nugetパッケージの管理」をクリックします。

Nugetパッケージマネージャが表示されるので、参照のタブでsqlclientを検索します。Microsoft.Data.SqlClientとSystem.Data.Clientがありますが、System.Data.Clientは今後開発されずにMicrosoft.DataClientに移行されるそうです。ですので後者を選ぶべきかと思いますが、とりあえず前者でテストを進めます。

コンパイルは成功
参照設定がうまくいったことでエラー表示は無くなりました。

実際にコンパイルして動かしてみると、データテーブルの内容が表示されました。


