- - PR -
SqlException,タイムアウトに達しました・・・・
| 投稿者 | 投稿内容 | ||||
|---|---|---|---|---|---|
|
投稿日時: 2004-08-16 21:02
そういう訳にはいきません。 一般に、DB内部で完結する処理であれば、無駄なデータ転送が発生しない分、ストアドプロシジャの方が効率的に処理できるというだけのことです。 ストアドプロシジャでの処理が複雑で時間がかかれば、やはりタイムアウトしてしまいます。 設計を大きく変更できないとしても、100万件を削除する時には10万件ごと10回の削除に分割するなど、なにかしら工夫しないと、どうしようもないと思います。 _________________ // 渋木宏明 (Hiroaki SHIBUKI) // http://hidori.jp/ // Microsoft MVP for Visual C# // // @IT会議室 RSS 配信中: http://hidori.jp/rss/atmarkIT/ | ||||
|
投稿日時: 2004-08-17 14:41
いろいろと、ご相談に乗っていただいてありがとうごいます。
・インデックス ・ストアド ・設計 もう一度見直しします。 あと、.NETからストアドを実行するための参考になるHP等があれば 大変ありがたいのですが。。。 | ||||
|
投稿日時: 2004-08-17 15:20
通常のクエリ実行と同じです。 SqlCommand を組み立てて、結果セットを返すかどうかなどの違いで ExecuteReader() あるいは ExecuteNonQuery() します。 _________________ // 渋木宏明 (Hiroaki SHIBUKI) // http://hidori.jp/ // Microsoft MVP for Visual C# // // @IT会議室 RSS 配信中: http://hidori.jp/rss/atmarkIT/ | ||||
|
投稿日時: 2004-08-18 12:58
渋木宏明(ひどり)さん、ストアドの実行できました!!
ふー。 あとは、もっとも重要な設計の見直しです。頑張ります。 設計の見直しで「SQLServerのトランザクションログの管理」 にも悩んでおります。 バッチは大量のデータを扱うので、その分ログも大きくなります。 オラクルとは違って、SQLServerは管理しないといけないと思うのですが .NET側では、皆さんどうされていますか? ログのバックアップとか、ログの削除とか。。。。 | ||||
