คุณจะเห็นว่าสำหรับการสืบค้นอย่างง่ายคำสั่ง SQL Select นั้นคล้ายกับไวยากรณ์ภาษาอังกฤษมาก เลือกฟังก์ชั่นของแต่ละประโยคมีดังนี้:
1. ประโยคเลือกแสดงรายการข้อมูลทั้งหมดที่ต้องใช้คำสั่ง SELECT มันถูกวางไว้ที่จุดเริ่มต้นของคำสั่ง SELECT โดยระบุรายการข้อมูลที่จะเรียกคืนโดยแบบสอบถามนี้ รายการข้อมูลเหล่านี้มักจะแสดงโดยตารางการเลือกนั่นคือชุดของการเลือกที่คั่นด้วย ตามลำดับจากซ้ายไปขวาแต่ละตัวเลือกจะสร้างคอลัมน์ของผลลัพธ์การสืบค้นและการเลือกอาจเป็นรายการต่อไปนี้:
(1) ชื่อคอลัมน์: ระบุคอลัมน์ในตารางที่ระบุโดยข้อจาก หากเลือกชื่อคอลัมน์ SQL จะใช้ค่าของคอลัมน์โดยตรงจากแต่ละแถวในตารางฐานข้อมูลและวางไว้ในแถวที่สอดคล้องกันของผลลัพธ์การสืบค้น
(2) ค่าคงที่: ระบุว่าค่าถูกวางไว้ในแต่ละแถวของผลลัพธ์การสืบค้น
(3) นิพจน์ SQL: หมายความว่าค่าที่จะใส่ลงในผลลัพธ์การสืบค้นจะต้องคำนวณตามกฎระเบียบของนิพจน์
2. ข้อจากรายการตารางที่มีข้อมูลที่จะสืบค้น ตัวบ่งชี้แต่ละตัวแสดงถึงตารางที่มีข้อมูลที่จะเรียกคืนโดยแบบสอบถาม ตารางเหล่านี้เรียกว่าแหล่งที่มาของตารางสำหรับคำสั่ง SQL นี้เนื่องจากผลลัพธ์การสืบค้นนั้นได้มาจากพวกเขา
3. ประโยคที่บอก SQL ให้เพียงข้อมูลสอบถามในบางแถวซึ่งอธิบายโดยเงื่อนไขการค้นหา
4. กลุ่มโดยประโยคระบุแบบสอบถามสรุปนั่นคือแทนที่จะสร้างผลลัพธ์การสืบค้นสำหรับแต่ละแถวจัดกลุ่มแถวที่คล้ายกันแล้วสร้างผลลัพธ์สรุปสำหรับแต่ละกลุ่ม
5. ประโยคที่มีการบอกให้ SQL ผลิตเฉพาะบางกลุ่มที่ได้รับจากกลุ่มโดย
6. คำสั่งซื้อตามประโยคเรียงลำดับผลลัพธ์การสืบค้นตามข้อมูลในหนึ่งคอลัมน์หรือมากกว่า หากข้อนี้ถูกละเว้นผลลัพธ์การสืบค้นจะไม่เป็นระเบียบ
ด้านล่างผู้เขียนจะให้โปรแกรม ASP ที่ง่าย แต่ใช้งานได้จริงซึ่งใช้แบบสอบถามคำสั่ง SQL สำหรับการอ้างอิงของคุณ
เพื่อให้ทุกคนเข้าใจชัดเจนและตรงไปตรงมาเกี่ยวกับการประยุกต์ใช้ไวยากรณ์ SQL ใน ASP ก่อนอื่นเราจะเขียนกระบวนการหลักทั้งหมดของแบบสอบถามลงในย่อยที่เรียกว่า query2table จากนั้นใช้ฟังก์ชันการรวมฝั่งเซิร์ฟเวอร์ของ ASP เพื่อเรียกย่อยย่อย . โปรดคลิปข้อความต่อไปนี้ลงในสมุดบันทึกบันทึกเป็นไฟล์ subdbtable.inc และวางไว้ในไดเรกทอรีเสมือนจริง Asptest:
-
Sub Query2table (InputQuery)
ตั้งค่า conntemp = server.createObject (adoDB.Connection)
conntemp.open dsn = นักเรียน; uid = นักเรียน; pwd = aspmagic
SET RESTEMP = ConnTemp.Execute (InputQuery)
HOWMANYFIELDS = rstemp.fields.count -1
สถิติจำนวนคอลัมน์ในฐานข้อมูล
-
<table border = 1> <tr>
-
สำหรับ i = 0 ถึง howmanyfields
-
<td> <b> < %= rstemp (i) .name %> </b> </td>
< % ถัดไป %>
</tr>
-
ทำในขณะที่ไม่ใช่ rstemp.eof
-
<tr>
< % สำหรับ i = 0 ถึง howmanyfields
thisValue = rstemp (i)
ถ้า isnull (ค่านี้) แล้ว
สิ่งนี้ =?
'หากฟิลด์ว่างเปล่าให้กำหนดค่าของตัวแปรนี้ค่านี้เป็นช่องว่าง
สิ้นสุดถ้า%>
<td valign = top> < %= thisValue %> </td>
< % ถัดไป %>
</tr>
< %rstemp.movenext
ลูป%>
</table>
-
rstemp.close
ตั้งค่า rstemp = ไม่มีอะไร
conntemp.close
ตั้ง C
onntemp = ไม่มีอะไรย่อย sub%>
หลังจากเสร็จสิ้นกระบวนการนิยามย่อยเราสามารถรับผลลัพธ์การสืบค้นในโปรแกรม ASP ต่อไปนี้ได้อย่างง่ายดายโดยการเพิ่มคำสั่ง SQL Query ที่เราต้องการใช้และเรียกกระบวนการ บันทึกรหัสสี่รหัสต่อไปนี้เป็นสี่ไฟล์. ASP: ASP11A.ASP, ASP11B.ASP, ASP11C.ASP และ ASP11D.ASP
<head> <title> asp11a.asp </title> </head>
<html> <body bgcolor =#ffffff>
-
โทรหา query2table (เลือก * จากผู้เผยแพร่ที่ชื่อเช่น 'A %%')
'สอบถามบันทึกทั้งหมดด้วยตัวอักษร A ในชื่อในผู้เผยแพร่ตาราง
-
<!-#รวม virtual = /asptest /subdbtable.inc-> </body> </html>
<head> <title> asp11b.asp </title> </head> <html> <body bgcolor =#fffff>
-
CALL QUERY2TABLE (เลือก * จากชื่อที่ปีที่ผ่านมา
'สอบถามบันทึกทั้งหมดในชื่อตารางที่มีปีที่ตีพิมพ์มากกว่าหรือเท่ากับปี 1998
-
<!-#รวม virtual = /asptest /subdbtable.inc-> </body> </html>
<head> <title> asp11c.asp </title> </head> <html> <body bgcolor =#fffff>
-
โทรหา query2table (เลือก * จากสำนักพิมพ์ที่มีจำนวน> 10,000 และเพศ = 'ชาย')
'สอบถามบันทึกทั้งหมดในผู้เผยแพร่ตารางที่มีมากกว่า 10,000 และเพศชาย
-
<!-#รวม virtual = /asptest /subdbtable.inc-> </body> </html>
<head> <title> asp11d.asp < /title> </head> <html> <body bgcolor =#fffff>
-
โทรหา query2table (เลือก * จากผู้เผยแพร่ที่รัฐ <> 'ny')
'สอบถามบันทึกทั้งหมดในผู้เผยแพร่ตารางที่ไม่ใช่นิวยอร์ก
-
<!-#รวม virtual = /asptest /subdbtable.inc-> </body> </html>
การใช้กระบวนการ query2table ที่กำหนดไว้ในไฟล์ subdbtable.inc คุณสามารถสอบถามฐานข้อมูลได้อย่างรวดเร็ว เล็กน้อยและป้อนคำสั่ง SQL Query ที่คุณต้องการใช้เมื่อเรียก query2table มันไม่ง่ายมาก?
วันนี้แม้ว่าเราจะใช้เวลาทั้งหมดในการเรียนรู้คำแนะนำ SQL เพียงครั้งเดียวโปรดเชื่อว่าสิ่งที่คุณได้รับนั้นแตกต่างจากคำสั่ง DOS แต่ผ่านบทความนี้คุณสามารถใช้ ASP เพื่อดำเนินการค้นหาฐานข้อมูลที่ใช้กันทั่วไป
คำแนะนำพื้นฐานอื่น ๆ อีกมากมายสำหรับ SQL ก่อนที่จะจบบทความนี้ผู้เขียนต้องการขอโทษเพื่อนหลายคนที่เขียนถึงฉัน ปัญหาที่เกิดขึ้นทั่วไปและเกิดขึ้นบ่อยครั้งในบทความ www.onlinechina.net/friend/flybird/bbs/wwwboard.asp?id=1 นี่คือเว็บไซต์การเรียนรู้ ASP จีนที่ดีที่สุดที่ผู้เขียนได้เห็นมาแล้วจัดโดย Feiniao จากเซี่ยงไฮ้ดังนั้นทุกคนต้องไปดู