我想從我的Oracle數據庫選擇數據使用C#日期。但是我總是得到一個空的數據集,雖然相同的查詢字符串中的Oracle SQL Developer工作得很好使用C#選擇oracle日期列
String Query = "Select position_date from position";
OracleDataAdapter adapter = new OracleDataAdapter(Query, ocon);
adapter.Fill(ds, "table"); //where ds is a dataset
PrintDataSet(ds);
回報
3/8/2011 12:00:00 AM.... and more
但是,當我改變我的查詢下面,那麼就沒有輸出!
String Query = "Select position_date from position
where to_char(position_date, 'mm-dd-yyyy') = '05-17-2012'"
此查詢在oracle sql developer中正常工作。我也嘗試trunc(sysdate),但似乎沒有工作! :(
有點生鏽,但試試這個 - 「select * from position where position_date = to_date('05 -17-2012','mm-dd-yyyy')」 – glennanthonyb
「2011/3/8」與「05-17-2012」完全不同。對我來說,你沒有得到任何回報是有道理的。你不應該將日期轉換爲字符串,而是將字符串轉換爲日期。使用'position_date = to_date('05 -17-2012','mm-dd-yyyy')'將使Oracle在position_date上使用索引。 –
@horse,可能是這樣,但它不是一個等價的查詢。發佈的查詢應該在2012年5月17日收到所有內容,您的查詢會在5/17/12 *午夜*時收到所有信息。您可能意思是TRUNC(position_date)= to_date('05 -17-2012','mm-dd-yyyy') – DCookie