visualbasic2005とoracleを使ってデータベース管理ソフトを作っています。
ひとつのデータのフィールドはいくつかあるのですが、
DATAUPLOADというフィールド値をSQL文で検索するときのみ、
土曜日のデータを拾おうとするとなぜか検索をかけるごとに
件数が1件ずつ減っていくという現象が起きています。
他のフィールドや土曜日以外のフィールドの検索の時には
そのようなエラーは起こらないのですが、
同じSQL文で検索結果が随時異なってしまう場合には
どのような原因が考えられますでしょうか?
DATAUPLOAD は'2008/03/12 00:00:00'の形式のDate型データです。
あるDATE(日付)のデータを検索するときに使用しているSQL文は、
SELECT * FROM DATABASE WHERE DATEUPLOAD BETWEEN TO_DATE(' & CStr(Format(DATE, "yyyy/MM/dd")) & 00:00:00','yyyy/MM/dd hh24:mi:ss') AND TO_DATE(' CStr(Format(DATE, "yyyy/MM/dd")) & 23:59:59','yyyy/MM/dd hh24:mi:ss')
です。
いろいろとSQL文を変更してみたのですが、
同じエラーが続いています。
何か思い当たることがありましたら
教えていただければと思います。
No.2ベストアンサー
- 回答日時:
>同じSQL文での検索結果が異なる
ということは考えにくいです(もし本当にそうならRDBMSの問題であり解決不可能です)。
SQL文を拝見すると、プログラムでSQL文を生成し、それを使って検索を掛けているようですが、こちらで生成されているSQL文が、そもそも間違っているとは考えられませんか?(生成されるSQL文が、毎回違うものになっている可能性が高い)。
上記のSELECT文の前にブレークポイントを設定したうえ、Debug.Printを挿入して、生成されたSQL文を確認してみてください。
そして、Oracleのデータベースマネージャに直接そのSQLを放り込んでみて、どのような結果になるかを確認しましょう。この方法できっと活路が開けると思いますが・・・。
SQL文自体は毎回変わらず同じことを確認して、
Oracleのデータベースマネージャで同じSQLを入力して
データを調べたところ、
データベースのデータ自体に間違ったデータが上書きされてしまい、
検索に引っかからなくなっていたことがわかりました。
SQL文自体の問題ではなかったんですね。
確認方法をアドバイスしていただき、ありがとうございました。
非常に参考になりました。
No.1
- 回答日時:
オラクルって日付時刻型フィールドを検索するとき、
いちいち文字列化しないとダメなんですか?
それと、1日だけの日付を検索しているようですが、
時刻まで入っているレコードが複数有っても、
日付だけで検索できないのですか?
はじめはそのまま日付だけで検索していたのですが
件数が変わってしまうというエラーが出たので
いろいろSQL文を変えて試していたために
わざわざ文字型にしてみたり日付型にしてみたりと
少しぐちゃぐちゃしたSQL文になってしまいました。
エラーが直ったので日付のまま検索をかけてみましたが
今度は大丈夫でした。
TO_DATE関数表記は直そうと思います。
回答ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) VBAで日付入力しているのですが 4 2023/03/02 11:25
- Visual Basic(VBA) データベースから絞り込んでデータを読み込み 1 2023/02/21 19:51
- MySQL SQLについて教えて下さい。 SELECT分で、あるカラムにある日付の 半年先のデータを取って来たい 3 2022/12/07 22:28
- MySQL SQLについて質問です。 SELECT TO_CHAR(TO_DATE('90-10-08.'YY- 4 2022/05/13 20:55
- Visual Basic(VBA) ExcelのVBAコードについて教えてください。 1 2023/01/23 09:24
- JavaScript gasについて 1 2022/05/31 21:51
- Access(アクセス) エクセルのVBAについて教えてください。 4 2023/01/21 10:21
- Visual Basic(VBA) ExcelのVBAコードについて教えてください。 2 2023/05/23 16:28
- MySQL ある時間以内の利用者の抽出について 3 2022/03/26 11:15
- Visual Basic(VBA) ExcelのVBAコードについて教えてください。 2 2023/01/23 17:13
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
「…が好き」「…を好む」は正し...
-
「なお、~」の英語表現
-
中学生 英語
-
あるので、するので、なるので
-
このことにつきまして
-
メール本文の「#」の意味は?
-
終わり次第連絡します という文...
-
文法的に分かりません
-
質問文を間違えて回答欄に入力...
-
問屋の米を買いたい買いたい
-
思い込みで回答する人の気持ちは?
-
Wordの案内文内の所定の個所だ...
-
「となる」と「になる」の違い
-
What is your nationality?
-
文章の書き方 「~ます」が多...
-
違い:Hello all,とHello to all,
-
井上ひさしさんの握手について...
-
i went to Mountainとi went to...
-
どうゆう意味ですか
-
ピリオドの後の空白
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
「なお、~」の英語表現
-
回答に質問者の文を貼る目的は...
-
文章の冒頭に質問の概要を箇条...
-
あるので、するので、なるので
-
I saw the girl gave a chocola...
-
このことにつきまして
-
「となる」と「になる」の違い
-
文章の書き方 「~ます」が多...
-
メール本文の「#」の意味は?
-
終わり次第連絡します という文...
-
真の勇者とはなんだろうか? 私...
-
4bitを個数で表すとしたら、16...
-
質問者を受け入れる度量の問題...
-
What is your nationality?
-
常体と敬体が混在する文章
-
5尺法(リッカート尺度)の集計...
-
「~自体」「~自身」という言...
-
「判断文」は「は」、「現象文...
-
このthat節ではなぜshouldが使...
-
Air Pods iPhone側に文章
おすすめ情報