ヘルプ、任意のアイデア??OracleクエリはSQL +で動作しますが、VB.NETで行を返しません
Oracle 10.2.0.3.0でOLEDBアダプタ(Oracle OLEDB)を使用しています。私のコードは、クエリのSQLを生成し、それをOLEDBDataReaderに実行すると、HasRowsはFalseになります。ただし、クエリ文字列の内容を出力して、同じクライアントマシンから同じユーザーとしてログインしてSQL +にコピーして貼り付けた場合、993行が返されます。何を与える?
はここに私のコードのセグメントです:
Dim DB As New OleDb.OleDbConnection(String.Format("{0};Password={1}", ConnectionString, DBPassword))
Dim flowQuerySQL As String
'... code to generate query
Debug.Print(flowQuerySQL)
Dim flowQueryCMD As New OleDb.OleDbCommand(flowQuerySQL, DB)
Dim flowQuery As OleDb.OleDbDataReader = flowQueryCMD.ExecuteReader()
While flowQuery.HasRows
'...handle rows
End While
Debug.Printステートメントを示しています
SELECT CLASS_ID, OBJECT_ID FROM TDM_SF_PROCESS WHERE CLASS_ID=853 AND TDM_END_TIME >= '01-Jan-2009' AND TDM_END_TIME < '31-May-2009' AND TDM_STATUS <> 1 AND TDM_STATUS <> 2
結果は1つだけですか?あなたは現在消費しているHasRowsは間違っていますか? – SQLMason
コマンドを実行した後の次のステートメントはWhileFlowQuery.HasRowsです。しかし、私はクエリから日付を削除しようとしましたが、今は 'HasRows'が' True'です。何故ですか? Oracleが望むものとは異なる形式の日付を必要とするOleDbについて何かありますか?私は日付と時間を試しましたが、それは私にORA-01861を与えました。 –