投稿者 社会人  (社会人) 投稿日時 2014/4/18 10:33:36
遅くなってすみません。

  Dim St As String
        Dim Cn As New System.Data.SqlClient.SqlConnection
        Dim SQL As System.Data.SqlClient.SqlCommand
        Dim ServerName As String = "Data Source=user;Initial Catalog=データベースシステム;Integrated Security=True"
        Dim DatabaseName As String = ""

        St = "Server=""(local)"";"
        St &= "integrated security=SSPI;"
        St &= "initial catalog = データベース"

        Cn.ConnectionString = St

        SQL = Cn.CreateCommand

        If SQL.CommandText = "SELECT * FROM ユーザー情報 WHERE ユーザーID = 'txtID.text' and パスワード = 'txtPASS.text" Then
            MessageBox.Show("A")
        End If
        Cn.Open()
    
    SQL.Connection = Cn
        ※MsgBox(SQL.ExecuteScalar)

        Cn.Close()
        SQL.Dispose()
        Cn.Dispose()

というコードを入力しましたら※の部分で

InvalidOprerationExceptionはハンドルされませんでした
ExecuteScalar: CommandText プロパティは初期化されていません。

と出てきました。
このエラーはSqlSeverにあるデータベースに接続が失敗したのか、それとも接続自体は成功しているがその後の処理が失敗したのか、根本的に何かが違っているのでしょうか?

>「4000」について
お二人が言ってる通り、プログラムの実行後に4000とMsgBoxが表示されます。
SQL.CommandText = "SELECT ※ FROM ユーザー情報"
※の部分がそのままMsgBoxに表示される形になっていました。

>anさん
文章を見てる限り、以前教わった下の方法を上手く使いこなすとデータベースの接続とtextboxに入力された情報とSqlServerに保存している情報を照り合わせてログインが出来ると言う認識で当たっていますか?

Dim DS As String = "Data Source=user;Initial Catalog=データベース;Integrated Security=True"
        Dim sql As String
        sql = "SELECT *"
        sql += "FROMTユーザー情報"
(以下略称

>HiDE-Adaさん
すみません。前回のSQLは他のフォームから直接コピーして修正する前に書き込んでしまいました。
今回のSQLで大丈夫でしょうか?