出来るのだASP Q&A掲示板(過去LOG)
訪問数 52046
昨日 889
今日 776 【PR】 パソコン入門からIT専門書まで幅広く取り揃えています。セブン-イレブン受取り手数料無料のセブンアンドワイ。 |
![]() ![]() ![]() ![]() ![]() |
![]() ![]() |
![]() ![]() ![]() ![]() |
[3092] Accessからデータを取得できない |
投稿者:山影さん 2003/01/14 19:15:26 |
はじめまして。宜しくお願いします。 ASPでADOを利用してAccessのDBからデータを取得しようとしています。 このときに、下記のようなメッセージが表示されてデータを取得できません。原因や対処方法をご存知でしたらお教えください。 「多段階の OLE DB の操作でエラーが発生しました。 各 OLE DB の状態の値をチェックしてください。 作業は終了しませんでした。」 なお、コードは下記のとおりです。 '[コード] <body> <% SQLs = "SELECT [tbl1].fld1, Avg([tbl2].TestVal) AS aveTest FROM tbl1 INNER JOIN tbl2 ON tbl1.key2 = tbl2.key2 " where = "" groupby = "GROUP BY [tbl1].fld1" SQLs = SQLs & " " & where & " " & groupby & ";" %> <form> <table border="1"> <tr> <th>Code</th> <th>Average</th> </tr> <% Set objConn = Server.CreateObject("ADODB.Connection") Set objRecord = Server.CreateObject("ADODB.RecordSet") Application.Lock objConn.Open Application("mdbODBC") objRecord.Open SQLs, objConn, adOpenForwardOnly, , adCmdText Do Until objRecord.EOF Response.Write "<tr>" Response.Write "<td align='center'>" & objRecord("fld1").Value & "</td>" Response.Write "<td align='center'>" & objRecord("aveTest").Value & "</td>" Response.Write "</tr>" objRecord.MoveNext Loop objRecord.Close Set objRecord = Nothing objConn.Close Set objConn = Nothing %> </table> </form> </body> |
[3093] Re:Accessからデータを取得できない |
投稿者:暇人さん 2003/01/15 9:52:10 |
問題の切り分けを行う必要があります 1、SQL文の作成ミス AccessのSQLビューに直接入れて動くかどうかみます。仕様通り動けば問題なし 2、Applicationオブジェクトの作成ミス On_Startイベントは間違ってませんか? global.asaはちゃんと働いていますか? 3、Cookieは有効になっているか? Applicationオブジェクトを使うにはCookieが有効になっていないと駄目です 4、接続文字列のミス パスワード、IDは間違ってないでしょうか? 同じ接続文字列を使って、ただ単にデータベースにアクセスするだけのASPを作ってテストします 他にも原因はいろいろありえますが、とりあえずこんだけ |
[3094] Re:Accessからデータを取得できない |
投稿者:山影さん 2003/01/15 13:29:38 |
暇人さん、ありがとうございます。 > 問題の切り分けを行う必要があります > 1、SQL文の作成ミス > AccessのSQLビューに直接入れて動くかどうかみます。仕様通り動けば問題なし SQL文は問題ありませんでした。 > 2、Applicationオブジェクトの作成ミス > On_Startイベントは間違ってませんか? > global.asaはちゃんと働いていますか? ちゃんと働いているように思えます。 > 3、Cookieは有効になっているか? > Applicationオブジェクトを使うにはCookieが有効になっていないと駄目です 有効になっていました。 > 4、接続文字列のミス > パスワード、IDは間違ってないでしょうか? > 同じ接続文字列を使って、ただ単にデータベースにアクセスするだけのASPを作ってテストします テスト段階なので何も設定しておらず、他のところでDBアクセスは できました。 質問してから再度状況を確認したのですが、既存のフィールドの値は 取得できるのですが、SQL文でAS節を用いて設定した計算式の値を 取得しようとするとエラーが発生するように思います。 どうか、宜しくお願いいたします。 |
[3112] すみませんでした。 |
投稿者:山影さん 2003/01/17 15:15:18 |
すみませんでした。 同じコードで可能なテーブルがあるということがわかりました。 コードの問題ではなく、DBの問題だったようです。 これからじっくりDBをチェックしてみます。 暇人さん、ご迷惑をおかけしてすみませんでした。 そして、ありがとうございました。 |
[3115] ご報告 |
投稿者:山影さん 2003/01/17 19:18:14 |
いろいろ試した結果、AVG関数をやめ、SUM関数とCOUNT関数を用いて 自力で平均を計算させるとうまくいきました。 もしかしたらサーバやDBの性能の問題なのかもしれません。 (実際は11万レコード程度あります) とりあえず、ご報告まで。 |
TreeBBS For ASP V.0.1.3 |