แนะนำ: เกี่ยวกับการจัดการข้อยกเว้นภายใต้ asp.net ajax เมื่อเร็ว ๆ นี้เมื่อฉันทำงานในโครงการฉันใช้ ASP.NET AJAX มาก เนื่องจากในโหมดการอัพเดทแบบอะซิงโครนัสของ UpdatePanel ข้อยกเว้นที่เกิดขึ้นระหว่างการประมวลผลพื้นหลังจะไม่ทำให้เกิดการเปลี่ยนแปลงในอินเทอร์เฟซของไคลเอนต์ แต่จะปรากฏข้อมูลข้อยกเว้นโดยตรงในโหมดการแจ้งเตือน ดังนั้นฉันจึงขี้เกียจและทำผิดพลาดโดยตรงเมื่อพื้นหลังตรวจจับอินพุตที่ไม่ตรงตามข้อกำหนด
20 เคล็ดลับที่มีประโยชน์มากใน ASP:
1. วิธีใช้ ASP เพื่อกำหนดเส้นทางทางกายภาพเสมือนจริงของเว็บไซต์ของคุณ
คำตอบ: ใช้วิธีการ mappath
<p allign = center> <font size = 4 face = Arial> <b>
เส้นทางทางกายภาพไปยังเว็บไซต์เสมือนนี้คือ:
</b> </font>
<font color =#ff0000 size = 6 face = Arial>
< % = server.mappath (/) %>
</font> </p>
2. ฉันจะรู้ได้อย่างไรว่าเบราว์เซอร์ใช้โดยผู้ใช้?
คำตอบ: ใช้วิธีการวัตถุคำขอ
strBrowser = request.serverVariables (http_user_agent)
ถ้า instr (strbrowser, msie) <> 0 แล้ว
Response.redirect (formsieonly.htm)
อื่น
Response.redirect (forall.htm)
สิ้นสุดถ้า
3. วิธีการคำนวณจำนวนเฉลี่ยของการเยี่ยมชมซ้ำต่อวัน
คำตอบ: วิธีแก้ปัญหา
< % startdate = datediff (d, ตอนนี้, 01/01/1990)
ถ้า strdate <0 แล้ว startDate = startDate*-1
avgvpd = int ((usercnt)/startdate) %>
แสดงผล
< % response.write (avgvpd) %>
นั่นคือหน้านี้มีการดูตั้งแต่วันที่ 10 พฤศจิกายน 1998
4. วิธีแสดงภาพสุ่ม
< % Dim P, PPIC, DPIC
PPIC = 12
สุ่ม
p = int ((ppic*rnd) 1)
DPIC = graphix/randompics/& p & .gif
-
แสดง
<img src = < % = dpic % >>
5. วิธีกลับไปที่หน้าก่อนหน้า
คำตอบ: <a href = < % = request.serverVariables (http_referer) % >> หน้า preivous < /a>
หรือใช้รูปภาพเช่น: <img src = arrowback.gif alt = < % = request.serverVariables (http_referer) % >>
6. วิธีกำหนดที่อยู่ IP ของอีกฝ่าย
คำตอบ: < % = request.ServerVariables (remote_addr) %>
7. วิธีเชื่อมโยงไปยังรูปภาพ
คำตอบ: < % @languages = vbscript %>
< % response.exext = 0
strimageName = graphix/errors/erroriamge.gif
Response.redirect (strimagename)
-
8. บังคับกล่องโต้ตอบป้อนรหัสผ่านรหัสผ่าน
คำตอบ: ใส่ประโยคนี้ที่จุดเริ่มต้นของหน้า
< % response.status = 401 ไม่ได้รับอนุญาต
Response.end
-
9. วิธีการส่งตัวแปรจากหน้าหนึ่งไปยังอีกหน้าหนึ่ง
คำตอบ: ใช้ประเภทที่ซ่อนอยู่เพื่อผ่านตัวแปร
< % วิธีการฟอร์ม = โพสต์การกระทำ = myNextPage.asp>
< % สำหรับแต่ละรายการในคำขอฟอร์ %>
<อินพุต namee = < % = item %> type = hidden
value = < % = server.htmlencode (request.form (item)) % >>
< % ถัดไป %>
</form>
10. ทำไมฉันถึงใช้ msgbox ในโปรแกรม ASP? ข้อผิดพลาดของโปรแกรมระบุว่าไม่มีการอนุญาต
คำตอบ: เนื่องจาก ASP เรียกใช้โดยเซิร์ฟเวอร์หากสามารถแสดงกล่องโต้ตอบบนเซิร์ฟเวอร์คุณต้องรอจนกว่าจะมีคนกดตกลงก่อนที่โปรแกรมของคุณจะสามารถดำเนินการต่อไปได้ โดยทั่วไปจะไม่มีใครบนเซิร์ฟเวอร์ดังนั้น Microsoft จะต้องห้ามฟังก์ชั่นนี้และสุ่มบอกคุณ (ฮ่าฮ่า) ว่าไม่มีการอนุญาต อย่างไรก็ตามสคริปต์ ASP และไคลเอนต์สามารถแสดงกล่องโต้ตอบดังต่อไปนี้:
11. มีวิธีปกป้องซอร์สโค้ดของคุณหรือไม่และไม่ปล่อยให้คนอื่นเห็น
ตอบ: คุณสามารถดาวน์โหลดตัวเข้ารหัสสคริปต์ Microsoft Windows ซึ่งสามารถเข้ารหัสสคริปต์ ASP และสคริปต์ JavaScript/VBScript ไคลเอนต์ - - อย่างไรก็ตามหลังจากที่ลูกค้าถูกเข้ารหัสเฉพาะ IE5 เท่านั้นที่สามารถดำเนินการได้ หลังจากที่เซิร์ฟเวอร์ถูกเข้ารหัสเฉพาะในกรณีที่ติดตั้งสคริปต์เอ็นจิ้น 5 บนเซิร์ฟเวอร์ (การติดตั้งหนึ่ง IE5 สามารถพบได้)
12. ฉันจะโอนสตริงแบบสอบถามจากไฟล์ ASP หนึ่งไปยังอีกไฟล์หนึ่งได้อย่างไร
คำตอบ: ไฟล์เดิมเพิ่มประโยคถัดไป: Response.redirect (second.asp? & request.serverVariables (query_string)))
13. ไฟล์ Global.asa ไม่ทำงานเสมอไป?
คำตอบ: เฉพาะเมื่อเว็บไดเรกทอรีถูกตั้งค่าเป็นเว็บแอปพลิเคชัน Global.asa นั้นถูกต้องและ Global.asa นั้นใช้ได้ในไดเรกทอรีรูทของเว็บแอปพลิเคชัน IIS4 สามารถใช้ Internet Service Manager เพื่อตั้งค่าการตั้งค่าแอปพลิเคชันไฟล์ HTM จะเรียกใช้รหัสสคริปต์เช่นไฟล์ ASP ได้อย่างไร
14. ไฟล์ HTM จะสามารถเรียกใช้รหัสสคริปต์เช่นไฟล์ ASP ได้อย่างไร
คำตอบ: Internet Services Manager -> เลือกเว็บไซต์เริ่มต้น -> ปุ่มเมาส์ขวา -> คุณสมบัติเมนู -> โฮมไดเรกทอรี -> การตั้งค่าแอปพลิเคชัน -> คลิกการกำหนดค่าปุ่ม -> การแมปแอป -> คลิกปุ่มเพิ่ม -> เบราว์เซอร์ที่เรียกใช้งานได้ อย่างไรก็ตามเป็นที่น่าสังเกตว่าด้วยวิธีนี้ประสิทธิภาพจะลดลง
15. วิธีลงทะเบียนส่วนประกอบ
คำตอบ: มีสองวิธี
วิธีแรก: ลงทะเบียน DLL ด้วยตนเองวิธีนี้ใช้จาก IIS 3.0 ถึง IIS 4.0 และเว็บเซิร์ฟเวอร์อื่น ๆ มันต้องการให้คุณดำเนินการในบรรทัดคำสั่งป้อนไดเรกทอรีที่มี DLL และป้อน: regsvr32 component_name.dll ตัวอย่างเช่น c:/temp/regsvr32 aspemail.dll มันจะลงทะเบียนข้อมูลเฉพาะของ DLL ลงในรีจิสทรีในเซิร์ฟเวอร์ จากนั้นส่วนประกอบนี้สามารถใช้บนเซิร์ฟเวอร์ได้ แต่วิธีนี้มีข้อบกพร่อง หลังจากลงทะเบียนส่วนประกอบโดยใช้วิธีนี้ส่วนประกอบจะต้องตั้งค่าบัญชีนิรนามที่เกี่ยวข้องกับ NT เพื่อให้ได้รับอนุญาตให้ดำเนินการ DLL นี้ โดยเฉพาะอย่างยิ่งส่วนประกอบบางอย่างจำเป็นต้องอ่านรีจิสทรีดังนั้นวิธีการลงทะเบียนส่วนประกอบจึงใช้หากไม่มี MTS บนเซิร์ฟเวอร์ หากต้องการยกเลิกการลงทะเบียน dll นี้ให้ใช้: regsvr32 /u aspobject.dll ตัวอย่าง c: /temp /regsvr32 /u aneiodbc.dll
วิธีที่สอง: การใช้ MTS (Microsoft Transaction Server) MTS เป็นคุณสมบัติใหม่ของ IIS 4 แต่ให้การปรับปรุงอย่างมาก MTS ช่วยให้คุณระบุว่ามีเพียงผู้ใช้ที่ได้รับการยกเว้นเท่านั้นที่สามารถเข้าถึงส่วนประกอบได้อย่างมากปรับปรุงการตั้งค่าความปลอดภัยบนเซิร์ฟเวอร์เว็บไซต์อย่างมาก ขั้นตอนในการลงทะเบียนส่วนประกอบบน MTS มีดังนี้:
1) เปิดคอนโซลการจัดการ IIS
2) ขยายเซิร์ฟเวอร์ธุรกรรมคลิกขวาที่ติดตั้ง PKG และเลือกแพ็คเกจใหม่
3) คลิกสร้างแพ็คเกจที่ว่างเปล่า
4) ตั้งชื่อแพ็คเกจ
5) ระบุบัญชีผู้ดูแลระบบหรือใช้การโต้ตอบ (หากเซิร์ฟเวอร์มักเข้าสู่ระบบด้วยผู้ดูแลระบบ)
6) ตอนนี้ใช้คลิกขวาที่ส่วนประกอบที่ขยายตัวด้านล่างแพ็คเกจที่คุณเพิ่งสร้าง เลือกส่วนประกอบใหม่จากนั้น
7) เลือกติดตั้งส่วนประกอบใหม่
8) ค้นหาไฟล์. dll ของคุณและเลือกถัดไปเพื่อเสร็จสิ้น
ในการลบวัตถุนี้เพียงเลือกไอคอนและเลือกลบ
หมายเหตุ: ให้ความสนใจเป็นพิเศษกับวิธีที่สองซึ่งเป็นวิธีที่ดีที่สุดในการดีบักส่วนประกอบที่คุณเขียนด้วยตัวเองโดยไม่ต้องรีสตาร์ทเครื่องทุกครั้ง
16. เชื่อมต่อ ASP เพื่อเข้าถึงฐานข้อมูล:
Dim Conn, mdbfile
mdbfile = server.mappath (ชื่อฐานข้อมูล. mdb)
SET Conn = Server.CreateObject (ADODB.Connection)
conn.open driver = {microsoft access driver (*.mdb)}; uid = admin; pwd = รหัสผ่านฐานข้อมูล; dbq = & mdbfile
17. เชื่อมต่อ ASP กับฐานข้อมูล SQL:
หรี่
SET Conn = Server.CreateObject (ADODB.Connection)
con.open; ผู้ให้บริการ = sqloledb; แหล่งข้อมูล = ชื่อเซิร์ฟเวอร์ SQL หรือที่อยู่ IP; uid = sa; pwd = รหัสผ่านฐานข้อมูล; ฐานข้อมูล = ชื่อฐานข้อมูล
สร้างวัตถุชุดบันทึก:
ตั้งค่า rs = server.createObject (adodb.recordset)
คำสั่ง Rs.Open SQL, Conn, 3,2
18. วิธีการใช้คำสั่ง SQL ทั่วไป:
(1) การกรองข้อมูลบันทึก:
SQL = SELECT * จากตารางข้อมูลที่ชื่อฟิลด์ = ลำดับฟิลด์สั่งซื้อตามชื่อฟิลด์ [DESC]
SQL = SELECT * จากตารางข้อมูลที่ชื่อฟิลด์เช่น % ค่าฟิลด์สั่ง % ตามชื่อฟิลด์ [DESC]
SQL = เลือก TOP 10 * จากตารางข้อมูลที่มีการสั่งชื่อฟิลด์ตามชื่อฟิลด์ [DESC]
SQL = เลือก * จากตารางข้อมูลที่ชื่อฟิลด์ใน (ค่า 1, ค่า 2, ค่า 3)
SQL = เลือก * จากตารางข้อมูลที่ชื่อฟิลด์ระหว่างค่า 1 และค่า 2
(2) อัปเดตข้อมูลข้อมูล:
SQL = อัปเดตตารางข้อมูลชุดชื่อฟิลด์ = ค่าฟิลด์ที่นิพจน์เงื่อนไข
SQL = อัปเดตฟิลด์ตารางข้อมูล 1 = ค่า 1, ฟิลด์ 2 = ค่า 2 ... ฟิลด์ฟิลด์ n = ค่า n โดยที่นิพจน์เงื่อนไข
(3) ลบข้อมูลข้อมูล:
SQL = ลบจากตารางข้อมูลที่นิพจน์เงื่อนไข
SQL = ลบจากตารางข้อมูล (ลบบันทึกทั้งหมดในตารางข้อมูล)
(4) เพิ่มบันทึกข้อมูล:
SQL = แทรกลงในตารางข้อมูล (ฟิลด์ 1, ฟิลด์ 2, ฟิลด์ 3 …) Valuess (ค่า 1, ค่า 2, ค่า 3 …)
SQL = แทรกลงในตารางข้อมูลเป้าหมายเลือก * จากตารางข้อมูลต้นฉบับ (เพิ่มบันทึกของตารางข้อมูลต้นฉบับลงในตารางข้อมูลเป้าหมาย)
(5) ฟังก์ชั่นสถิติการบันทึกข้อมูล:
AVG (ชื่อฟิลด์) เพื่อรับค่าเฉลี่ยของคอลัมน์ตาราง
นับ (*| ชื่อฟิลด์) สถิติเกี่ยวกับจำนวนแถวข้อมูลหรือสถิติเกี่ยวกับจำนวนแถวข้อมูลที่มีค่าในคอลัมน์ที่แน่นอน
สูงสุด (ชื่อฟิลด์) รับค่าสูงสุดของคอลัมน์ตาราง
ขั้นต่ำ (ชื่อฟิลด์) รับค่าต่ำสุดของคอลัมน์ตาราง
ผลรวม (ชื่อฟิลด์) เพิ่มค่าของคอลัมน์ข้อมูล
อ้างอิงวิธีการทำงานด้านบน:
SQL = เลือกผลรวม (ชื่อฟิลด์) เป็นนามแฝงจากตารางข้อมูลที่นิพจน์เงื่อนไข
ตั้งค่า rs = conn.excute (SQL)
ใช้ RS (นามแฝง) เพื่อรับสถิติและฟังก์ชั่นอื่น ๆ จะถูกใช้เช่นเดียวกับด้านบน
(5) การจัดตั้งและการลบตารางข้อมูล:
สร้างชื่อตารางข้อมูลตาราง (ฟิลด์ 1 ประเภท 1 (ความยาว), ฟิลด์ 2 ประเภท 2 (ความยาว) …)
ตัวอย่าง: สร้าง Table Tab01 (ชื่อ Varchar (50), DateTime Default Now ())
ชื่อตารางข้อมูลตาราง (ลบตารางข้อมูลอย่างถาวร)
19. วิธีการบันทึกวัตถุชุด:
Rs.Movenext ย้ายตัวชี้บันทึกลงหนึ่งบรรทัดจากตำแหน่งปัจจุบัน
Rs.MovePrevious ย้ายตัวชี้บันทึกขึ้นหนึ่งบรรทัดจากตำแหน่งปัจจุบัน
Rs.MoveFirst ย้ายตัวชี้บันทึกไปยังแถวแรกของตารางข้อมูล
Rs.Movelast ย้ายตัวชี้บันทึกไปยังแถวสุดท้ายของตารางข้อมูล
Rs.absolutePosition = n ย้ายตัวชี้บันทึกไปยังแถว n ของตารางข้อมูล
rs.absolutePage = n ย้ายตัวชี้บันทึกไปยังบรรทัดแรกของหน้า n
rs.pagesize = n ตั้งค่าแต่ละหน้าเป็น N Records
Rs.pagecount ส่งคืนจำนวนหน้าทั้งหมดตามการตั้งค่าของหน้าเว็บ
Rs.RecordCount ส่งคืนจำนวนระเบียนทั้งหมด
Rs.bof ส่งคืนว่าตัวชี้บันทึกเกินหัวของตารางข้อมูลหรือไม่ จริงหมายถึงใช่เท็จคือไม่
RS.EOF ส่งคืนว่าตัวชี้การบันทึกเกินกว่าจุดสิ้นสุดของตารางข้อมูลจริงวิธีการจริงใช่หรือไม่เท็จไม่ใช่
Rs.Delete ลบระเบียนปัจจุบัน แต่ตัวชี้บันทึกไม่เลื่อนลง
Rs.AddNew เพิ่มระเบียนที่ส่วนท้ายของตารางข้อมูล
Rs.Update Update Data Table Records
-
วิธีการวัตถุ 20 รายการ
วิธีเปิด
recordSet.Open แหล่งที่มา, ActiveConnection, Cursortype, Locktype, Options
แหล่งที่มา
วัตถุ RecordSet สามารถเชื่อมต่อกับวัตถุคำสั่งผ่านคุณสมบัติแหล่งที่มา พารามิเตอร์ต้นทางสามารถเป็นชื่อวัตถุคำสั่ง, คำสั่ง SQL, ชื่อตารางข้อมูลที่ระบุหรือขั้นตอนที่เก็บไว้ หากมีการละเว้นพารามิเตอร์นี้ระบบจะใช้คุณสมบัติต้นฉบับของวัตถุ RecordSet
Activeconnection
วัตถุ RecordSet สามารถเชื่อมต่อกับวัตถุการเชื่อมต่อผ่านคุณสมบัติ ActiveConnection ActiveConnection ที่นี่สามารถเป็นวัตถุการเชื่อมต่อหรือพารามิเตอร์สตริงที่มีข้อมูลการเชื่อมต่อฐานข้อมูล (การเชื่อมต่อ string)
เคอร์สโคป
พารามิเตอร์ cursortype ของวิธีการเปิดของวัตถุ RecordSet ระบุว่าประเภทของเคอร์เซอร์ในการเริ่มต้นข้อมูลรวมถึง appenwardonly, Adopenkeyset, Adopendynamic และ Adopenstatic ซึ่งอธิบายไว้ดังต่อไปนี้:
-
คำอธิบายค่าคงที่ค่าคงที่
-
ค่าเริ่มต้นของ Adapenwardonly 0 ค่าเริ่มต้นเริ่มต้นเคอร์เซอร์ที่สามารถเลื่อนไปข้างหน้า (ไปข้างหน้าเท่านั้น)
AdopenKeyset 1 เริ่มเคอร์เซอร์ประเภทคีย์
Adopendynamic 2 เริ่มต้นเคอร์เซอร์แบบไดนามิก
Adopenstatic 3 เริ่มต้นเคอร์เซอร์แบบคงที่
-
ประเภทเคอร์เซอร์ข้างต้นจะส่งผลโดยตรงต่อคุณสมบัติและวิธีการทั้งหมดของวัตถุ RecordSet รายการต่อไปนี้อธิบายความแตกต่างระหว่างพวกเขา
-
Property recordset นำไปใช้เป็นเวลานานมาแล้ว
-
AbsolutePage ไม่รองรับที่อ่านได้เขียนอ่านง่ายเขียนเขียนได้
AbsolutePosition ไม่รองรับที่อ่านได้เขียนอ่านง่ายเขียนเขียนได้
Activeconnection อ่านได้เขียนได้อ่านง่ายเขียนอ่านง่ายเขียนอ่านง่ายเขียนได้
BOF อ่านอย่างเดียวอ่านอย่างเดียวอ่านอย่างเดียวเท่านั้น
บุ๊กมาร์กไม่รองรับการอ่านเขียนได้อ่านง่ายเขียนเขียนได้
แคชที่อ่านได้เขียนได้อ่านง่ายเขียนได้อ่านง่ายเขียนได้
CursorLocation อ่านได้เขียนได้อ่านง่ายเขียนอ่านง่ายเขียนอ่านง่ายเขียนได้
Cursortype อ่านง่ายเขียนอ่านง่ายเขียนอ่านง่ายเขียนอ่านง่ายเขียนได้
editmode อ่านอย่างเดียวอ่านอย่างเดียวอ่านอย่างเดียวเท่านั้น
อ่านอย่างเดียวอ่านอย่างเดียวอ่านอย่างเดียวเท่านั้น
กรองที่อ่านได้เขียนได้อ่านง่ายสามารถเขียนได้อ่านง่ายเขียนอ่านได้เขียนเขียนได้
LockType อ่านได้เขียนได้อ่านง่ายเขียนอ่านง่ายเขียนอ่านง่ายเขียนได้
MARSHALOPTIONS อ่านได้เขียนได้อ่านง่ายเขียนอ่านง่ายเขียนได้
MaxRecords อ่านได้เขียนได้อ่านง่ายเขียนได้อ่านง่ายเขียนได้
Pagecount ไม่รองรับการอ่านอย่างเดียวอย่างเดียว
หน้าอ่านได้อ่านง่ายอ่านง่ายเขียนอ่านง่ายเขียนอ่านง่ายเขียนเขียนได้
RecordCount ไม่รองรับการอ่านอย่างเดียวอย่างเดียว
แหล่งที่อ่านได้เขียนได้อ่านง่ายเขียนอ่านง่ายเขียนได้อ่านง่ายเขียนเขียนได้
รัฐอ่านอย่างเดียวอ่านอย่างเดียวอ่านอย่างเดียวเท่านั้น
สถานะอ่านอย่างเดียวอ่านอย่างเดียวอ่านอย่างเดียวเท่านั้น
การสนับสนุนการสนับสนุนการสนับสนุน AddNew
ฝ่ายสนับสนุนการสนับสนุนการสนับสนุน CancelBatch
ฝ่ายสนับสนุนการสนับสนุนการสนับสนุนการสนับสนุน
โคลนไม่สนับสนุนหรือไม่
การสนับสนุนการสนับสนุนการสนับสนุนอย่างใกล้ชิด
ลบการสนับสนุนการสนับสนุนการสนับสนุน
การสนับสนุนการสนับสนุน Getrows
การย้ายไม่สนับสนุนการสนับสนุนการสนับสนุน
ฝ่ายสนับสนุนการสนับสนุนการสนับสนุน MoveFirst
Movelast ไม่สนับสนุนการสนับสนุนการสนับสนุน
ฝ่ายสนับสนุนการสนับสนุนการสนับสนุน Movenext
การสนับสนุนการสนับสนุนการสนับสนุนการสนับสนุนไม่สนับสนุน
การสนับสนุนฝ่ายสนับสนุนการสนับสนุน NexTrecordset
รองรับการสนับสนุนการสนับสนุนแบบเปิด
สนับสนุนการสนับสนุนการสนับสนุนการสนับสนุน
Resync ไม่สนับสนุนการสนับสนุนการสนับสนุน
สนับสนุนการสนับสนุน
อัปเดตการสนับสนุนการสนับสนุนการสนับสนุน
รองรับการสนับสนุนการสนับสนุนการสนับสนุน UpdateBatch
-
วิธี NexTrecordset ไม่สามารถใช้ได้กับฐานข้อมูล Microsoft Access
การล็อค
พารามิเตอร์ locktype ของวิธีการเปิดของวัตถุ RecordSet ระบุประเภทการล็อคที่จะนำมาใช้ หากพารามิเตอร์นี้ถูกละเว้นระบบจะใช้คุณสมบัติ LockType ของวัตถุ RecordSet เป็นค่าที่ตั้งไว้ล่วงหน้า พารามิเตอร์ LockType รวมถึง AdlockReadonly, Adlockprssimistic, Adlockoptimistic และ Adlockbatchoptimistic ฯลฯ และอธิบายไว้ดังนี้:
-
คำอธิบายค่าคงที่ค่าคงที่
-
ADLOCKREADONLY 1 ค่าเริ่มต้นวัตถุ RecordSet เริ่มต้นในโหมดอ่านอย่างเดียวและไม่สามารถเรียกใช้วิธีการอัปเดตการอัพเดตและวิธีอื่น ๆ ได้
Adlockprssimistic 2 เมื่อมีการอัปเดตแหล่งข้อมูลระบบจะล็อคการกระทำของผู้ใช้รายอื่นชั่วคราวเพื่อรักษาความสอดคล้องของข้อมูล
Adlockoptimistic 3 เมื่อมีการอัปเดตแหล่งข้อมูลระบบจะไม่ล็อคการกระทำของผู้ใช้รายอื่น ผู้ใช้รายอื่นสามารถเพิ่มลบและแก้ไขข้อมูล
AdlockbatchOptimistic 4 เมื่อแหล่งข้อมูลกำลังได้รับการปรับปรุงผู้ใช้รายอื่นจะต้องเปลี่ยนคุณสมบัติ CursorLocation เป็น AdudeclientBatch เพื่อเพิ่มข้อมูล
งานที่ถูกลบและแก้ไข*
แบ่งปัน: โปรแกรมเมอร์ ASP ต้องมีความรู้ การเชื่อมต่อฐานข้อมูล: % set conn = server.createObject (adodb.connection) conn.open driver = {ไดรเวอร์การเข้าถึง Microsoft ( * .mdb)}; dbq = server.mappath (ชื่อฐานข้อมูล) % เปิดฐานข้อมูล: Exec = เลือก * จากชุดฐานข้อมูล