Solusi paling sederhana untuk beberapa kueri
[Kata pengantar]
Kita sering mengalami beberapa masalah kueri, dan pernyataan SQL yang panjang sering membuat para bhikkhu bingung. Terutama ketika bagian klien mengisi kondisi kueri, akan lebih sulit untuk menggunakan metode biasa.
Berikut ini dengan cerdik menggunakan identitas "where1 = 1" (pada kenyataannya, itu banyak, biarkan saja memiliki nilai true) untuk menyelesaikan masalah ini.
[Ringkasan teks]
'Judul Informasi Subjek
'Nama perusahaan perusahaan
'Konten konten dalam memposting informasi
Alamat alamat perusahaan
Profil Perusahaan Infomation
'Perhatikan instruksi terkait
Semua nilai di atas dikirimkan berdasarkan formulir, dan kemudian nilai yang sesuai diperoleh oleh: subjek = trim (request.form ("subjek")) dll.
<%
'Fungsi ini sangat penting! -----------------------------------------------------------------------------------------------------------------------------
Functionsql (a, b, sqls)
IFB <> "" maka 'Jika klien tidak mengirimkan nilai ini, pernyataan SQL yang sesuai tidak akan dihasilkan.
sqls = sqls & "dan" & a & "like '%" & b & "%'"
endif
SQL = SQLS
Fungsi endfungsi
'-------------------------------------------------------------------------------------------------------------------------
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 = "pilih*frommytablewhere1 = 1"
'Berikut panggilan fungsi di atas, dan ada banyak panggilan (secara teoritis apapun)
sqls = sql ("subjek", subjek, sqls)
SQLS = SQL ("Perusahaan", Perusahaan, SQLS)
sqls = sql ("konten", konten, sqls)
SQLS = SQL ("Alamat", Alamat, SQLS)
SQLS = SQL ("Infomation", Infomation, SQLS)
sqls = sql ("note", note, sqls)
sqls = sqls & "orderbyiddesc"
rs.opensqls, Conn, 3,2
%>
[Kesimpulan]
Jika tidak ada fungsi fungsi kunci (A, B, SQLS), kita dapat membayangkan berapa banyak penilaian yang dibutuhkan satu demi satu!