ADO.NETの質問・雑談スレ2 (421レス)
上下前次1-新
抽出解除 レス栞
33(4): 2009/02/23(月)03:34 ID:kcpJjeEI(1) AAS
accessのMDBファイルに、以下のように接続してSQLを発行してます。
using (OleDbConnection cn = new OleDbConnection(m_connectString))
{
try
{
cn.Open();
OleDbCommand com = new System.Data.OleDb.OleDbCommand("SELECT name FROM Aテーブル ORDER BY sort;", cn);
OleDbDataReader reader = com.ExecuteReader();
(データを取得する処理 省略)
}
省17
37: 2009/02/23(月)21:31 ID:??? AAS
//同じコードで>>33試してみたが再現せんな…
42(1): 2009/02/25(水)06:57 ID:??? AAS
>>33
どうやったらっていうか、普通レコードがなくても例外は発生しません
JETのSQLが間違ってる時のエラーメッセージはかなりいい加減だからなぁ
ほんとにExecuteReaderでエラーになってるなら、フィールド関係ないとは思うんだが、
実際に実行してるSQLは>>33とまったく同一?
JETはカラムかテーブル名が見つからないと、パラメータが足りないみたいなメッセージを出す時がある
だから>>36や>>40のような指摘があるわけなんだが...nameやsortが予約語だったりするのか?
あと可能性としてはMDBが壊れてる可能性もあるな
一度ACCESSで修復かけてみては?
43: 2009/02/25(水)11:43 ID:??? AAS
>>33
ソース見るに finally は try ブロック内で実行されると思ってない?
あくまで finally が実行されるタイミングはメソッド終了時。
using で宣言してるオブジェクトが解放されるタイミングもそう。
メソッドがこのソースで完結してるなら問題はでないと思うけど、
ほかにもいろいろ処理が含まれるなら思わぬ問題が出る可能性があるね。
using or try のネストはその辺理解して使わないと後でめんどいよ。
つーことでこのソースだけじゃ不具合原因はわからんと思う。
>>42 が言うように JET のエラーメッセージは当てにならんw
59: 2009/03/01(日)12:31 ID:??? AAS
>>33は結局何がどうなったんだろう
上下前次1-新書関写板覧索設栞歴
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.888s*