2016-04-09 78 views
0

VBからデータベースに接続するためにコーディングを改善する必要がありますが、「ConnectionStringプロパティが初期化されていません」という示唆を維持できません。ConnectionStringプロパティが初期化されていません

MessageBox.Show(「注文を送信」)

provider = "Provider=Microsoft.Jet.OLEDB.12.0; Data Source=" 
    dataFile = "J:\Database511_be.accdb" 
    myConnection.ConnectionString = connString 
    myConnection.Open()>>>>>THIS IS THE SECTION THAT BUGS ME, IT WOULDN'T CONNECT TO THE DATABASE 
    Dim str As String 


    str = "Insert INTO CUSTOMER_DATABASE([Items],[Pizza Size],[Quantity],[Table Number], [Total]) Values (?,?,?,?)" 
    Dim cmd As OleDbCommand = New OleDbCommand(str, myConnection) 

    cmd.Parameters.Add(New OleDbParameter("Items", CType(TextBox3.Text, String))) 
    cmd.Parameters.Add(New OleDbParameter("Pizza Size", CType(TextBox4.Text, String))) 
    cmd.Parameters.Add(New OleDbParameter("Quantity", CType(TextBox5.Text, String))) 
    cmd.Parameters.Add(New OleDbParameter("Table Number", CType(ListBox4.Text, String))) 
    cmd.Parameters.Add(New OleDbParameter("Total", CType(TextBox8.Text, String))) 

    Try 

     cmd.ExecuteNonQuery() 
     cmd.Dispose() 
     myConnection.Close() 
     TextBox3.Clear() 
     TextBox4.Clear() 
     TextBox5.Clear() 
     TextBox8.Clear() 

    Catch ex As System.Exception 


    End Try 
+0

私は '統合Security'は、SQL Serverの設定であることを確信しています。他のDB操作が「完全に動作している」場合は、この接続文字列をこのメソッドにコピーしないのはなぜですか?次のエラーはそのSQL文字列に関連します。参照してください:http://www.connectionstrings.com/ – Plutonix

+0

connStringはプロバイダとdataFile変数を無視しているようです。 – LarsTech

+0

私は見る!私はconnStringを削除する必要がありますか? –

答えて

1

あなたの接続文字列を定義しているが、あなたはOleDbConnectionオブジェクトと関連付けされていません。あなたはこれをしたい:

Dim connection As New OleDbConnection(connString) 

または、より良い

Using connection As New OleDbConnection(connString) 
    connection.Open() 
    ' ... do stuff with the open connection 
End Using 
+0

は依然としてデータベースに接続できませんでした。 –

関連する問題