投稿者 an  (社会人) 投稿日時 2014/2/12 11:39:00
前回も記載しましたが、BETWEEN時の「%」は不要(というか今回はあってはダメ)で、

> ・試しに sql += " WHERE (生産者コード between '00' and '10')"にすると00~10の11件のデータが表示されました。

とのことですので、これは適用させてください。


> ・最初の分岐が上手く行かず、Text1,2の両方が入力していないのに
> 「SELECT * FROM 生産者情報 WHERE (生産者番号 BETWEEN '%%' and '%%')」となり、
> 他の検索条件にまで到達しない状況になっている
>
> と、ややこしい事になっています。

とありますが、「WHERE (生産者番号 BETWEEN ~」を付加する処理へ到達する条件を確認すると
> If TextBox1.Text.Length >= 0 Then
となっています。
「>=」では0以上(0を含む)なので、入力されていない(Length=0)時も
そちらの処理が行われるのでしょう。




以前も書きましたが、「プログラムは記述された通り正常に動作する」ものなので、
どういった動作をするのかという事がわかり、それとソースコードをにらめっこすれば、
ある程度あたりは付けれると思います。
しかも前回は「>」で処理していたのに、今回「>=」に変更されていますので、
その辺も加味すれば、さらにあたりが付け易いと思います。

また、デバッガによるデバッグ(ライン実行等)は行えてるのでしょうか?
デバッグ作業がきっちり行えないと今後も苦労すると思います。
(今後もこのような場で質問できるとは限らないので。)