- - PR -
DataAdapterの例外エラーの回避方法
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2004-09-30 20:13
DataAdapterのFILLで例外エラーになってしまいます。
同じSQL文で、条件が変わる(件数が多くなる)と、エラーになってしまいます。 解決方法はあるのでしょうか? ★SQL★ SELECT CEILING(CAST(COUNT(*) AS MONEY) / 5) SHEET_COUNT FROM T_IRAINUSI LEFT OUTER JOIN (SELECT * FROM T_TODOKESAKI WHERE DELETE_FLG='0' AND STOP_FLG='0') T_TODOKESAKI ON T_IRAINUSI.IRAINUSI_NO=T_TODOKESAKI.IRAINUSI_NO WHERE T_IRAINUSI.DELETE_FLG='0' AND T_IRAINUSI.JIZEN_FLG<>'1' AND T_IRAINUSI.KATEN_CODE>='2201' AND T_IRAINUSI.KATEN_CODE<='2201' GROUP BY T_IRAINUSI.IRAINUSI_NO ★ソースコード★ objDataAdapter = New SqlDataAdapter objDataAdapter.SelectCommand = New SqlCommand With objDataAdapter.SelectCommand .Connection = objConn .CommandTimeout = clsGlobal.DbCommandTimeout .CommandType = CommandType.Text .CommandText = strSql End With objDataAdapter.Fill(objDataTable) <-- ここで例外エラーになります。 | ||||
|
投稿日時: 2004-09-30 20:24
エラーの内容を書かないとコメントのしようがないです。
開発環境と使用しているDBぐらいは最低書きましょう。 あと「条件が変わる(件数が多くなる)」っていうのも、よくわかりません。 Where句の条件が増えるって意味でしょうか? それともデータ件数が増えるって意味でしょうか? | ||||
|
投稿日時: 2004-09-30 23:41
件数が増えると出るという事から、推測ですが・・・
クエリに時間がかかっていませんか? タイムアウトしてるのかなと・・・。 そういう場合はコネクションおよびweb.configで設定できるタイムアウト値を適切に設定してあげれば良いです。 #一応、自分が持ってる情報をちゃんと提供した方が回答は得やすいですよ。 | ||||
|
投稿日時: 2004-10-01 09:51
すいません。
環境など書いていませんでした。 Windowsのアプリ 言語:VB.NET DB:SQL SERVER2000 OS:Windows XP Pro ★下記SQL文の条件が変わる場合です。 KATEN_CODEが、'1000'の場合は、エラーにならない(検索結果:100件) KATEN_CODEが、'2201'の場合は、エラーになる。 (検索結果:15000件) ※クエリアナライザで、実行すると、検索結果は戻ってきます。 AND T_IRAINUSI.KATEN_CODE>='1000' AND T_IRAINUSI.KATEN_CODE<='1000' ↓ AND T_IRAINUSI.KATEN_CODE>='2201' AND T_IRAINUSI.KATEN_CODE<='2201' ★エラー デバックすると、objDataAdapter.Fill(objDataTable) の箇所から下記の コードまで、スッキプします。 Catch ex As Exception Throw ex Finally | ||||
|
投稿日時: 2004-10-01 09:53
で、キャッチした例外の内容は? _________________ 「伝える」とは「人に云う」と書く。 http://d.hatena.ne.jp/NAL-6295/ | ||||
|
投稿日時: 2004-10-01 10:24
内容
>? err {Microsoft.VisualBasic.ErrObject} Description: "" Erl: 0 HelpContext: 0 HelpFile: "" LastDllError: 183 Number: 0 Source: "" > | ||||
|
投稿日時: 2004-10-01 10:41
例外の内容って、エラーメッセージのことでは?
#ex.Messageだったかな。 | ||||
|
投稿日時: 2004-10-01 11:08
どうもありがとうございます。
Catch ex As Exception MsgBox(ex.Message) <-----追加してみました。 Throw ex Finally <メッセージ> タイムアウトに達しました。 操作が完了する前にタイムアウト期間が過ぎたか、 またはサーバが応答していません。 |