私の質問が単純ならば謝りますが、インターネットで多くの調査を行い、解決策を見つけるのが難しいです。Visual Studioでオブジェクトを使用してSQLステートメントを実行する
Visual Studioに接続されているデータベースがあり、「データベースに接続...」ウィザードを使用して接続を確立しました。 Visual Studioのサーバーエクスプローラーで、 "newreptDBtest.accdb"という名前のデータ接続と、Mandrewという名前のサーバーがあります。
ボタンをクリックすると、基本的にこのデータベースでSQL文を実行します。だから私は、フォーム上のボタンを持って、それが次のコードがあります:一般宣言で
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim sqlconn As New SqlConnection
sqlconn.ConnectionString = "server=Mandrew;Initial Catalog=newreptDBtest.accdb"
Try
sqlconn.Open()
Catch ex As Exception
MessageBox.Show("Error on connection")
End Try
If sqlconn.State = 1 Then
MessageBox.Show("Success!")
End If
End Sub
を、私が持っている:おそらく
Imports System.Data.SqlClient
それがSQLデータベースではありませんので、?よく分かりません。いずれにせよ、私は "成功"を達成することができませんでした。 MessageBoxから。いったん取得すれば、特定の行や単一の情報を返すSQL文を作成する方法を理解できます。 newreptDBtest、私はnewreptと呼ばれるにクエリを実行することがしたいのですが、データベースへの接続文字列がある表で
:
"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Users\Andrew\Documents\newreptDBtest.accdb"
TL; DR:
どのように私はプロジェクトに既に接続されているデータベース内のテーブルに対してSQLクエリーを実行するためにオブジェクト(ボタンなど)を使用しますか?事前に
おかげで、 SuperXero
プロバイダを含めるように名前空間をインポートし、ConnStringを変更する必要があったため、追加しました: Provider = SQLOLEDB; server = ... しかし、conn.Open( " )行...任意のアイデアなぜですか? – SuperXero
接続文字列にユーザー名とパスワードを指定する必要があります。これには、uid = Username; pwd = password;接続文字列の詳細については、http://www.sqlstrings.com/MS-Access-connection-strings.htmを参照してください。注意、私はAccessデータベースのSQLOLEDBプロバイダを使用できるとは思わない。 –
さて、私はプロバイダについて気づいた。これで接続文字列が次のように変更されました: 'Dim ConnString As String =" Provider = Microsoft.ACE.OLEDB.12.0; server = Mandrew;データソース= 'C:\ Users \ Andrew \ Documents \ newreptDBtest.accdb' エラーが表示されます。「インストール可能なISAMを見つけることができませんでした」そして、奇妙なことに、 "server = Mandrew;"コードをエラーなく実行できるようにします。私は 'While reader.Read()'ループで何かをするように設定していませんが、エラーは出ませんでした。 – SuperXero