VB6.0用掲示板の過去のログ(No.1)−VBレスキュー(花ちゃん)
[記事リスト] [新規投稿] [新着記事] [ワード検索] [過去ログ] [管理用]

投稿日: 2003/07/31(Thu) 11:11
投稿者みつお
Eメール
URL
タイトルRe^3: データベースの値との比較について

>
> これって、VB.TextがNULLだったら"TABLE1.DATA1 IS NULL"、
> そうでなかったら"TABLE1.DATA1 = '" & VB.Text & "'"
> としたいってことですよね。
> ("TABLE1.DATA1 IS '" & VB.Text & "'"ではダメだし)
> そうだとしたら、SQL文というよりも文字列の操作だと思います。
>
> sql="SELECT COUNT(*) FROM TABLE1 WHERE TABLE1.DATA1 " _
>   & IIf(IsNull(VB.Text), "IS NULL", "= '" & VB.Text & "'")
> とかするしかないのでは。
> IIfはIf文の省略形?なので、だいさんのいうように
> sql="SELECT COUNT(*) FROM TABLE1 WHERE TABLE1.DATA1 "
> If IsNull(VB.Text) Then
>   sql = sql & "IS NULL"
> Else
>   sql = sql & "= '" & VB.Text & "'"
> End If
> とするのとコーディング量は大して変わらないかも知れませんが。

TMさん、ありがとうございます。
TMさんに教えていただいた方法だと、IF文を50個も並べることなく
記述することができますね。
やはりIF文がずっと並んでいると見栄えもよくないと思われるので、
TMさんの方法でいこうとおもいます。
今回の件ではいろいろと参考になりました。
だいさん、TMさん、本当にありがとうございました。


- 関連一覧ツリー (★ をクリックするとツリー全体を一括表示します)

- 返信フォーム (この記事に返信する場合は下記フォームから投稿して下さい)

- Web Forum -