@IT会議室は、ITエンジニアに特化した質問・回答コミュニティ「QA@IT」に生まれ変わりました。ぜひご利用ください。
- PR -

データリンクファイル(SqlConnectionの場合)

1
投稿者投稿内容
さかもと
ぬし
会議室デビュー日: 2004/05/14
投稿数: 586
投稿日時: 2004-10-12 15:05
さかもとと申します。
================
WinXP
VS.Net2003(VB)
Winアプリ
SQLSever2000
================

いつもお世話になります。
DBへの接続時,OLEDbConnectionを使うかSQLConnectionを使うかで悩んでいます。
現状,コードで接続文字列を直接記述していますが,データベース
名をテスト時はテスト用の名前に,本番は当然本番用の名前に記述
をやり直す必要があります。

全てのソースの接続文字列を一々やり直すのは手間の為,調べた
ところデータリンクファイルを使用し(OleDbの場合)

Dim cn As New OleDb.OleDbConnection
cn.ConnectionString = "File Name=D:\test.udl"

とすれば,該当のデータリンクファイルを変更するだけで,全ての
コードを変更できることまで確認できました。

但し,SqlConnectionを使いたい場合,同様の仕様を満たす
方法を調べたのですが,はっきりとした記述を見つけることが
出来ませんでした。

上記,ソースをSqlConnectionで書き直した場合には

「キーワードはサポートされていません'File Name'」

とエラーになります。

SqlConnectionを使用したい場合はどのようにすれば
宜しいのでしょうか?(データ件数が多く,可能な限りの
速度が求められる為こちらを選択したいのですが)

ご存知の方や,「私はこのようにやっている」という方が
いらっしゃいましたらご教授下さい。
宜しくお願い致します。
えんぞ@?
ぬし
会議室デビュー日: 2004/07/06
投稿数: 271
お住まい・勤務地: はまっこ
投稿日時: 2004-10-12 15:34
引用:

「私はこのようにやっている」


うちの現場では、Applicationオブジェクトを使用しています。

[参考]http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=15591&forum=7&3
べる
ぬし
会議室デビュー日: 2003/09/20
投稿数: 1093
投稿日時: 2004-10-12 15:34
http://www.microsoft.com/japan/msdn/library/default.asp?url=/japan/msdn/library/ja/jpdnbda/htm/daag.asp
引用:
データベースの接続文字列を格納する場所を以下の場所から選択できます。

アプリケーション構成ファイル : たとえば、ASP.NET Web アプリケーションの Web.config
UDL (ユニバーサル データ リンク) ファイル (OLE DB .NET データ プロバイダのみにサポートされています)
Windows レジストリ
カスタム ファイル
COM+ カタログ : 構成文字列を使用して格納します (サービスを受けるコンポーネントのみ)

SQLConnectionではudlはサポートされていないということでしょうかね。

私はapp.configを使用しています。

[ メッセージ編集済み 編集者: べる 編集日時 2004-10-12 15:36 ]
さかもと
ぬし
会議室デビュー日: 2004/05/14
投稿数: 586
投稿日時: 2004-10-12 16:08
えんぞ@見習様,べる様
ご返答ありがとうございます。

やはり駄目ですか・・・,リンクファイルの方法はかなり便利
なのでなんとか!と思ったのですが。(やりたい方も結構
いらっしゃるかと思うのですが,それが見当違いなんですかね・・・)

教えていただいた方法を試してみます。
本当にありがとうございました。
さかもと
ぬし
会議室デビュー日: 2004/05/14
投稿数: 586
投稿日時: 2004-10-13 13:17
えんぞ@見習様,べる様
先日,同件にてご教授頂いたさかもとです。
app.configについてあれこれと調査,テストした結果実現できましたので
ご報告致します。

1:App.configをプロジェクトに追加

2:App.configに以下の記述を追加(Windows認証)
<configuration>
<appSettings>
<add key="strConn" value="workstation id=hoge;packet size=4096;integrated security=SSPI;data source=&quot;hoge\hogehoge&quot;;persist security info=False;initial catalog=Test" />
</appSettings>

3:コードより呼出
Dim strConn As String = AppSettings("strConn")
Dim cn As New SqlClient.SqlConnection(strConn)
cn.Open()
MsgBox("OK")
cn.Close()

AppSettingsメソッドの理解から入ったので,最初はおっしゃっている意味が
全く分かりませんでしたが,ご返答頂いた内容で色々調査して実現できました。
本当にありがとうございました。

1

スキルアップ/キャリアアップ(JOB@IT)