C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[2]: accessへの接続


(過去ログ 73 を表示中)

[トピック内 6 記事 (1 - 6 表示)]  << 0 >>

■42807 / inTopicNo.1)  accessへの接続
  
□投稿者/ サル (1回)-(2009/10/21(Wed) 15:27:02)

分類:[.NET 全般] 

windowsXP
access2003
VWD2008

お世話になります。
VB.netでaccessへ接続してクエリを実行したいのですが、
なんとかやってみると

"初期化文字列の形式が使用に適合しません。index 0 で始まってます。" 

というエラーが出てきてしまいます。

調べてみると
http://social.msdn.microsoft.com/forums/ja-JP/vbexpressja/thread/6e1b977a-6f62-4bc7-b786-9ba120f9d322/
というのを見つけましたが、レジストリはすでに上記リンクのようになっていました。

他に解決策がわからずに行き詰ってしまったのですが、
何かアドバイスをいただけませんでしょうか。
宜しくお願いいたします。

以下記述コードです。


        Dim filepath As String = "Access保管場所"

        Dim cn As New System.Data.OleDb.OleDbConnection(filepath)
        Dim command As New System.Data.OleDb.OleDbCommand("Execute クエリ名", cn)

        Try
            cn.Open()

            Dim dr As System.Data.OleDb.OleDbDataReader = command.ExecuteReader()

            cn.Close()

        Catch ex As Exception
            MessageBox.Show(ex.Message, "エラー")
        End Try

引用返信 編集キー/
■42808 / inTopicNo.2)  Re[1]: accessへの接続
□投稿者/ まさる (107回)-(2009/10/21(Wed) 15:43:09)
まさる さんの Web サイト
OleDbConnectionクラスのコンストラクタに、ファイル名を受け取るオーバーロードはありません。

http://msdn.microsoft.com/ja-jp/library/system.data.oledb.oledbconnection.oledbconnection.aspx

こちらに接続文字列の例も載っていますので参考にしてください。

http://msdn.microsoft.com/ja-jp/library/system.data.oledb.oledbconnection.aspx
引用返信 編集キー/
■42809 / inTopicNo.3)  Re[1]: accessへの接続
□投稿者/ 魔界の仮面弁士 (1358回)-(2009/10/21(Wed) 15:44:26)
No42807 (サル さん) に返信
> Dim filepath As String = "Access保管場所"
> Dim cn As New System.Data.OleDb.OleDbConnection(filepath)

この指定が間違っています。

OleDb は、Access 専用というわけではありませんので、単にファイルを指定するだけではなく、
それがどの種類のデータベースであるのか、プロバイダを指定する必要があります。


接続文字列は、たとえば、
 "Provider=Microsoft.JET.OLEDB.4.0;Data Source=C:\FolderName\Database1.mdb"
などのように指定してみてください。
引用返信 編集キー/
■42812 / inTopicNo.4)  Re[2]: accessへの接続
□投稿者/ サル (2回)-(2009/10/21(Wed) 16:03:30)
No42808 (まさる さん) に返信
> OleDbConnectionクラスのコンストラクタに、ファイル名を受け取るオーバーロードはありません。
>
> http://msdn.microsoft.com/ja-jp/library/system.data.oledb.oledbconnection.oledbconnection.aspx
>
> こちらに接続文字列の例も載っていますので参考にしてください。
>
> http://msdn.microsoft.com/ja-jp/library/system.data.oledb.oledbconnection.aspx

お返事どうもありがとうございます。
コネクションについて全然分かってないことが分かりました。
参考にさせていただき、勉強してきます!
引用返信 編集キー/
■42813 / inTopicNo.5)  Re[2]: accessへの接続
□投稿者/ サル (3回)-(2009/10/21(Wed) 16:05:22)
No42809 (魔界の仮面弁士 さん) に返信
> ■No42807 (サル さん) に返信
> OleDb は、Access 専用というわけではありませんので、単にファイルを指定するだけではなく、
> それがどの種類のデータベースであるのか、プロバイダを指定する必要があります。
>
>
> 接続文字列は、たとえば、
>  "Provider=Microsoft.JET.OLEDB.4.0;Data Source=C:\FolderName\Database1.mdb"
> などのように指定してみてください。

どうもありがとうございます。
接続文字列を上記に変更したところうまく動きました!

分かりやすい説明で助かりました。ありがとうございます。
引用返信 編集キー/
■42814 / inTopicNo.6)  Re[2]: accessへの接続
□投稿者/ サル (4回)-(2009/10/21(Wed) 16:06:29)
すみません、解決済み忘れてました。
解決済み
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -