Date: Wed, 17 Nov 2004 13:27:39 +0900
From: "Akira Horikawa" <who@example.ne.jp>
堀川です、こんにちは
-----Original Message-----
From: Kohichiroh Ohta [mailto:who@example.co.jp]
Sent: Friday, November 12, 2004 9:20 AM
To: who@example.ne.jp
Subject: [ml-msde-beg:01378] HOST_NAME() 関数の戻り値
>SELECT HOST_NAME() AS PC名
>HOST_NAME()関数の戻り値が、どのPCで実行しても
>開発時に使用していたPCのコンピュータ名が返ってきてしまいます。
>このネットワーク上にはそのコンピュータ名のPCは存在しないにもかかわらず。
>HOST_NAME()関数は何を見にいっているのでしょうか?
このHOST_NAME関数が返してくるホスト名(正確には、ワークステーション名)は
正しい名前(DNS上の名前)ではなく、SQL Serverに接続を行なうアプリケーション
が、自分でその名前を申告したものが採用されます。
申告を省略したら、Windows上のコンピュータの名前になります。
例えば、OSQLコマンドでは、-H スイッチ で申告します。
osql -E -H"MyHostName" -Q"SELECT HOST_NAME()"
とすれば、HOST_NAME関数が返す値は、MyHostNameとなります。
ADOの接続文字列であれば、
ConStr="Provider=SQLOLEDB;Data Source=(local);" & _
"Initial Catalog=master;Trusted_Connection=yes;Workstation
ID=MyHostName"
のように、Workstation ID で定義します。
どのPCでも同じホスト名を返すとしたら、アプリケーションの中の接続文字列部分を
見直してください
------------------------------------
(株)日本技術ソフト開発
堀川 明 (Akira Horikawa)
11月17日(水曜日) 13時00分記
mailto:who@example.ne.jp
http://www.horikawa.ne.jp/msde/
[MSDE/SQLServerに関して、今、どんなことにお困りですか?] |
よろしければお困りの内容を、電子メールで教えて下さい。 |
質問を電子メールで作成する
|
[ウィンドを閉じる][MSDE/SQLServer FAQ ][MSDE / MSDE2000 技術サポート情報一覧]
|