14歳の自分に衝撃の事実を告げてください

動作環境OSはXP_pro、IIS5.1+ASPで、(.NETではありません)SqlServer2000のdbに接続してテーブルデータを表示していたスクリプトがあります。(システムDSN設定して)

このたび、Sqlserverを2008に変えて、DBデータを2008にアタッチしてスクリプトを実行してみましたらエラーは表示されないものの、ブラウザ画面は真っ白で何も表示されません。

DBに接続できているようなのですが、データを表示することができません。
どこが原因なのでしょう?

SSMSのログファイルの表示では、「Starting up database "●●"」となっておりエラーではない?ようです。

データを表示するという部分を、テーブルがEOFなら"EOF"、EOFでないなら"NOTEOF"をブラウザに表示するようなスクリプトにすると"NOTEOF"と画面に表示されます。

スクリプト内は、
cstrDSNNAME, cstrDSNUSER, cstrDSNPAWDは定数で、ユーザ名は'sa'です。
sqlserver2008のログインの'sa'に設定しているパスワードはcstrDSNPAWDと同じです。

Dim adoCon
Dim adoRs

'接続 --------------------------------------
Set adoCon = Server.CreateObject("ADODB.Connection")
Set adoRsM = Server.CreateObject("ADODB.Recordset")

adoCon.Open cstrDSNNAME, cstrDSNUSER, cstrDSNPAWD
adoCon.CommandTimeout = 0

strSql="Select * from 商品M"
adoRsM.Open strSql, adoCon, adOpenForwardOnly
      (↓では”NOTEOF”と表示される)
if adoRsM.EOF then
"EOF"と表示される処理
else
       "NOTEOF"と表示される処理
end if


↑を、テーブルデータを表示するような処理にするとブラウザ画面は真っ白で、エラーなどは表示されず、ブラウザの下のバーには「ページが表示されました」とでます。

何が原因かを調べるにはどうやったらいいでしょうか??
よろしくお願いいたします。

A 回答 (1件)

Response.Write


等表示する部分が書かれていませんが
実際には書いていますでしょうか?
    • good
    • 0
この回答へのお礼

回答ありがとうございます。

テーブルレコードがEOFの場合、NOTEOFの場合の処理の中に書いており、「NOTEOF」と表示されます。

結局、ODBCデータソースのドライバ設定を「SQLSERVER」から「NATIVECLIANT」にしたら通常になりました。

この辺をきちんと勉強して理解しなければいけないのですが、取り急ぎ別件に着手しなければならないのでとりあえずこの件は解決というか、どうにかなりました。

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

お礼日時:2011/05/07 10:35

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


おすすめ情報