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

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

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

Re[7]: SQLSERVERへの接続


(過去ログ 68 を表示中)

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

■39583 / inTopicNo.1)  SQLSERVERへの接続
  
□投稿者/ おやじ (6回)-(2009/08/11(Tue) 10:48:43)

分類:[.NET 全般] 

開発環境:windows
使用言語:ASP.net(C#)

いつもお世話になっております。
お疲れ様です。

SQLSERVER2008EXPRESSでサーバに接続を試みたのですが、うまくいきません。VBの場合はうまく接続できたのですが、、、

以下のようなエラーが出てきてしまいます。

◆エラーメッセージ
SQL Server への接続を確立しているときにネットワーク関連またはインスタンス固有のエラーが発生しました。サーバーが見つからないかアクセスできません。インスタンス名が正しいこと、および SQL Server がリモート接続を許可するように構成されていることを確認してください。 (provider: 名前付きパイプ プロバイダ, error: 40 - SQL Server への接続を開けませんでした)

接続文字列は以下のようになっております。

◆C#(うまくいかない)
"Server=SQLOLEDB;DataSource=./sqlexpress;AttachDbFilename=C:/known.mdf;trusted_connection=yes;"

◆VB(うまくいく)
"Server=SQLOLEDB;DataSource=.\sqlexpress;AttachDbFilename=C:\known.mdf;trusted_connection=yes;"

果たして違いはいったい何なのでしょうか?

どなたかご存知の方がいれば教えてください。

よろしくお願いします。





引用返信 編集キー/
■39589 / inTopicNo.2)  Re[1]: SQLSERVERへの接続
□投稿者/ やじゅ (1204回)-(2009/08/11(Tue) 11:24:00)
やじゅ さんの Web サイト
No39583 (おやじ さん) に返信
> 接続文字列は以下のようになっております。
>
> ◆C#(うまくいかない)
> "Server=SQLOLEDB;DataSource=./sqlexpress;AttachDbFilename=C:/known.mdf;trusted_connection=yes;"
>

@を先頭に入れるか、/を//とするかではないかな。

C# の string では「@(アットマーク)」を知っていると便利
http://dhive.jp/blog/yama/?p=1149
引用返信 編集キー/
■39592 / inTopicNo.3)  Re[1]: SQLSERVERへの接続
□投稿者/ はつね (1056回)-(2009/08/11(Tue) 11:43:12)
はつね さんの Web サイト
No39583 (おやじ さん) に返信
> SQLSERVER2008EXPRESSでサーバに接続を試みたのですが、うまくいきません。VBの場合はうまく接続できたのですが、、、

参考URL:
http://hatsune.wankuma.com/seminer/tokyo23/index.aspx

引用返信 編集キー/
■39866 / inTopicNo.4)  Re[2]: SQLSERVERへの接続
□投稿者/ おやじ (7回)-(2009/08/15(Sat) 11:41:07)
やじゅさん、はつねさん返信ありがとうございます。

教えていただいた方法をいろいろ試してみましたが、うまくいきません。

もう少し自分で頑張ってみようと思います。

どうもありがとうございました。



引用返信 編集キー/
■39880 / inTopicNo.5)  Re[3]: SQLSERVERへの接続
□投稿者/ おやじ (8回)-(2009/08/16(Sun) 16:32:15)
お疲れ様です。

調べてみたところ

「connectionstring」にある「ServerVersion」が「System.InvalidOperationException」 の例外をスローしたのが原因のようです。

なぜ起こるのか、またどうすれば解決するのか自分にはわかりません。

どなたかご存知の方はおしえてください。

よろしくお願いします。
引用返信 編集キー/
■39881 / inTopicNo.6)  Re[4]: SQLSERVERへの接続
□投稿者/ もりお (40回)-(2009/08/16(Sun) 18:02:46)
2009/08/16(Sun) 18:38:45 編集(投稿者)
No39880 (おやじ さん) に返信
エラー部分前後のソースコードと、どの段階でエラーが発生したのかを教えていただけるとありがたいです。


私の環境で試した限りでは OleDbConnection のインスタンスをセットする段階で
「OLE DB プロバイダが connectionString で指定されませんでした」 というエラーが出ました。
接続文字列に Provider=SQLOLEDB を追加したら OK でした。

追記:他にも変えた場所がありました。
    DataSource → Data Source
             / → \
         
string connectionString = @"Provider=SQLOLEDB;Server=SQLOLEDB;Data Source=.\sqlexpress;AttachDbFilename=C:\known.mdf;trusted_connection=yes;";
OleDbConnection connection = new OleDbConnection(connectionString);
connection.Open();
connection.Close();
connection.Dispose();

引用返信 編集キー/
■39882 / inTopicNo.7)  Re[5]: SQLSERVERへの接続
□投稿者/ もりお (41回)-(2009/08/16(Sun) 18:56:03)
No39881 (もりお さん) に返信

SqlConnection を使って

DataSource → Data Source
         / → \

だけで善いみたいです。失礼しました。

string connectionString = @"Server=SQLOLEDB;Data Source=.\sqlexpress;AttachDbFilename=C:\known.mdf;trusted_connection=yes;";
SqlConnection connection = new SqlConnection(connectionString);

引用返信 編集キー/
■39888 / inTopicNo.8)  Re[6]: SQLSERVERへの接続
□投稿者/ おやじ (9回)-(2009/08/16(Sun) 22:45:58)
もりおさん、返信ありがとうございます。

おかげさまでうまくいきました!!

ありがとうございました。

◆ソース

SqlConnection cn = new SqlConnection(@"Server=SQLOLEDB;Data Source=.\SQLEXPRESS;AttachDbFilename=C:\known.mdf;Trusted_Connection=Yes;");

SqlCommand cmd = new SqlCommand("SELECT * FROM 預金 ", cn);
cn.Open();
SqlDataReader reader = cmd.ExecuteReader();
GridView1.DataSource = reader;
GridView1.DataBind();
reader.Close();
cn.Close();


引用返信 編集キー/
■39889 / inTopicNo.9)  Re[7]: SQLSERVERへの接続
□投稿者/ おやじ (10回)-(2009/08/16(Sun) 22:46:47)
解決済みチェックを忘れてました。

すみません。



解決済み
引用返信 編集キー/


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

このトピックに書きこむ

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

管理者用

- Child Tree -