|
分類:[.NET 全般]
質問します。 select Count(列名)〜で取得したAccessテーブルの件数を Int型で取得したいのですが、うまくいきません。 「型;Object型をint型に暗黙的に変換できません。」というバグになります。 どうか手ほどきを よろしくお願いします。
public static System.Data.OleDb.OleDbConnection gobjOLECnc=new System.Data.OleDb.OleDbConnection(); public static System.Data.OleDb.OleDbCommand gobjOLECmd=new System.Data.OleDb.OleDbCommand(); public static System.Data.OleDb.OleDbDataAdapter gobjOLEAdapter=new System.Data.OleDb.OleDbDataAdapter(); public static System.Data.OleDb.OleDbDataReader gobjOLEReader; public static System.Data.OleDb.OleDbTransaction gobjTrans;
public static int gfncSQLLngGetCount(string strTBLName, string strFLDName, string strwhere) { string strSQL=""; System.Data.DataTable objDtTBL=new System.Data.DataTable(); strSQL=strSQL + "Select "; strSQL=strSQL + " Count(" + strFLDName + ") As CountID "; strSQL=strSQL + "From "; strSQL=strSQL + " " + strTBLName + ""; strSQL=strSQL + "where "; strSQL=strSQL + " " + strwhere + ";"; try { gvoidGetConnectionString(); gobjOLECnc.Open(); gobjOLECmd=new System.Data.OleDb.OleDbCommand(strSQL,gobjOLECnc); gobjOLEAdapter = new System.Data.OleDb.OleDbDataAdapter(gobjOLECmd); gobjDTSet=new System.Data.DataSet(strTBLName); //gobjOLEAdapter.Fill(gobjDTSet, strTBLName); gobjOLEAdapter.Fill(objDtTBL); gobjDTRow = objDtTBL.Rows[0]; return objDtTBL.Rows[0][0];//ここでエラーになります。
} catch (Exception objEx) { System.Windows.Forms.MessageBox.Show(objEx.ToString()); } finally { gobjOLECnc.Close(); }
}
|