多くの場合、複数のクエリの問題が発生し、長いSQLステートメントが人々を混乱させることがよくあります。特に、クライアントがクエリ条件に部分的に満たされている場合、通常の方法を使用することはより困難です。
以下は、この問題を解決するために1 = 1(実際にはその価値が真であるため)の一定の形成を巧みに使用します。
まとめ:
'主題情報タイトル
'会社は情報会社名を公開しました
'コンテンツ公開情報コンテンツ
'住所会社の住所
'Infomationの紹介
'関連する手順に注意してください
上記の値はフォームで送信され、subject = trim(request.form(subject)などに渡されます。対応する値を取得します。
<%
'この機能は重要です!
関数SQL(A、B、SQLS)
B <> then 'の場合、クライアントがこの値を送信しない場合、対応するSQLステートメントは生成されません。
sqls = sqls&&&a&wike '%&b&%'
ifを終了します
SQL = SQLS
エンド関数
'-----------------データベースを呼び出します
conn = server.createObject(adodb.connection)を設定します
dbpath = server.mappath(/database/mydb.mdb)
conn.open driver = {microsoftアクセスドライバー(*.mdb)};
rs = server.createObject(adodb.oldset)を設定します
sqls = select * myTableから1 = 1
'次の呼び出しは上で呼び出すことができ、多くの呼び出しを呼び出すことができます(理論的にはarbitrarily意的に)
sqls = sql(件名、科目、sqls)
SQLS = SQL(会社、会社、SQLS)
SQLS = SQL(コンテンツ、コンテンツ、SQLS)
SQLS = SQL(アドレス、アドレス、SQLS)
SQLS = SQL(Infomation、Infomation、SQLS)
sqls = sql(注、注、sqls)
SQLS = SQLS&ORDER ID DESC
rs.oopen sqls、conn、3,2
%>
結論:キー関数関数SQL(A、B、SQLS)がない場合、次々に判断する必要がある判断の数を想像できます!