Nous rencontrons souvent plusieurs problèmes de requête et de longues déclarations SQL rendent souvent les gens confus. Surtout lorsque le client est partiellement rempli des conditions de requête, il sera plus difficile d'utiliser des méthodes ordinaires.
Ce qui suit utilise intelligemment la formation constante de l'endroit où 1 = 1 (en fait, de sorte que sa valeur est vraie) pour résoudre ce problème.
Résumé:
'Titre des informations sur le sujet
«Nom de l'entreprise publié la société
«Contenu de publication de contenu Contenu
'Adresse de l'adresse de l'entreprise
Introduction à «Infomination
'Remarque les instructions connexes
Les valeurs ci-dessus sont soumises par formulaire, puis transmises: sujet = TRIM (request.form (sujet)), etc. Pour obtenir la valeur correspondante.
<%
«Cette fonction est critique!
Fonction SQL (A, B, SQLS)
Si b <> alors 'Si le client ne soumet pas cette valeur, l'instruction SQL correspondante ne sera pas générée.
SQLS = SQLS & & & A & Like '% & B &%'
terminer si
SQL = SQLS
Fonction finale
'----------------- Appelez la base de données
Définir Conn = Server.CreateObject (ADODB.Connection)
Dbpath = server.mappath (/database/mydb.mdb)
Conn.open Driver = {Microsoft Access Driver (* .mdb)};
Set rs = server.createObject (adodb.oldset)
SQLS = SELECT * FROM MYTABLE où 1 = 1
«Les appels suivants peuvent être appelés ci-dessus, et de nombreux appels peuvent être appelés (théoriquement arbitrairement)
SQLS = SQL (sujet, sujet, SQLS)
SQLS = SQL (société, société, SQLS)
SQLS = SQL (Contenu, Contenu, SQLS)
SQLS = SQL (adresse, adresse, SQLS)
SQLS = SQL (Infomation, Infomination, SQLS)
SQLS = SQL (Remarque, Remarque, SQLS)
SQLS = SQLS & Order by ID DESC
Rs.OOPEN SQLS, Conn, 3,2
%>
Conclusion: S'il n'y a pas de fonction de fonction clé SQL (A, B, SQLS), nous pouvons imaginer combien de jugements doivent en juger les uns après les autres!