Самое простое решение нескольких запросов
[Предисловие]
Мы часто сталкиваемся с несколькими проблемами запроса, и длинные заявления SQL часто путают монахов. Особенно, когда клиентская часть заполняет условия запроса, будет еще сложнее использовать обычные методы.
Следующее умно использует идентичность «где 1 = 1» (на самом деле, это много, просто дайте ему значение TRUE) для решения этой проблемы.
[Сводка текста]
'Название информации о предмете
'Название компании компании
Содержание контента в публикации информации
Адрес адрес компании
'Профиль компании Infomation
'Примечание связанных с инструкциями
Все вышеперечисленные значения отправляются по форме, а затем соответствующие значения получаются с помощью: субъект = trim (request.form ("субъект")) и т. Д.)
<%
«Эта функция очень важна! ----------------------------------------------------------------------------------------------------------------------------
Functionsql (a, b, sqls)
ifb <> "" Тогда 'Если клиент не отправляет это значение, соответствующий оператор SQL не будет сгенерирован.
sqls = sqls & "и" & a & "like '%" & b & "%'"
эндиф
SQL = SQLS
Конечная функция
'-------------------------------------------------------------------------------------------------------------------------
SetConn = server.createObject ("adodb.connection")
Dbpath = server.mappath ("/database/mydb.mdb")
Conn.open "Driver = {microsoft accessdriver (*. Mdb)}; pwd =; dbq =" & dbpath
Setrs = server.createObject ("adodb.recordset")
sqls = "select*fromMyTablewhere1 = 1"
«Следующие вызовы вышеуказанной функции, и есть много вызовов (теоретически любые)
SQLS = SQL («Субъект», субъект, SQLS)
SQLS = SQL ("Компания", Компания, SQLS)
SQLS = SQL ("Content", Content, SQLS)
SQLS = SQL («Адрес», Адрес, SQLS)
SQLS = SQL ("Infomation", Infomation, SQLS)
SQLS = SQL («Примечание», примечание, SQLS)
sqls = sqls & "orderbyiddesc"
Rs.opensqls, Conn, 3,2
%>
[Заключение]
Если нет ключевой функции функции QU (A, B, SQLS), мы можем представить, сколько суждений нужно один за другим!