เสมือน โมฆะ ลบ ( );
โยน ( CDBException );
หมายเหตุ
เรียกฟังก์ชันนี้สมาชิกเพื่อลบระเบียนปัจจุบัน หลังจากการลบที่สำเร็จ ของชุดระเบียนเขตข้อมูลข้อมูลสมาชิกถูกตั้งค่าเป็น Null และท่านต้องโทรศัพท์ติดต่ออย่างใดอย่างหนึ่งของฟังก์ชันการย้ายอย่างชัดเจนเพื่อที่จะย้ายจากระเบียนถูกลบ เมื่อคุณย้ายจากระเบียนถูกลบ จะไม่สามารถกลับไปก็ ถ้าแหล่งข้อมูลสนับสนุนธุรกรรม คุณสามารถทำการลบเรียกส่วนของธุรกรรม สำหรับข้อมูลเพิ่มเติม ให้ดูบทความ ในVisual c ++ Programmer ของคำแนะนำของธุรกรรม (ODBC)?
หมายเหตุnbsp ถ้าคุณได้ดำเนินการเป็นกลุ่มแถวกำลังนำมา คุณไม่สามารถเรียกลบ นี้จะทำการตรวจสอบเงื่อนไขล้มเหลว แม้ว่าคลาCRecordsetไม่มีกลไกสำหรับการปรับปรุงแถวข้อมูลขนาดใหญ่ คุณสามารถเขียนฟังก์ชันของคุณเอง โดยใช้ฟังก์ชัน ODBC API SQLSetPos สำหรับตัวอย่างของวิธีการทำเช่นนี้ ให้ดูตัวอย่าง DBFETCH สำหรับข้อมูลเพิ่มเติมเกี่ยวกับขนาดใหญ่กำลังนำมาแถว ให้ดูบทความ ชุดระเบียน: กำลังนำระเบียนในกลุ่ม (ODBC)ในVisual c ++ Programmer ของคำแนะนำ(&N)?
ข้อควรระวังnbsp ชุดระเบียนต้องสามารถปรับปรุงได้ และต้องมีระเบียนถูกต้องปัจจุบันในชุดระเบียนเมื่อคุณเรียกใช้ลบ มิฉะนั้น ข้อผิดพลาดเกิดขึ้น ตัวอย่างเช่น ถ้าคุณลบระเบียน แต่ไม่ได้เลื่อนไประเบียนใหม่ก่อนที่คุณเรียกลบอีกครั้งลบผิดCDBException(&N)?
แตกต่างจากAddNewและแก้ไขการเรียกการลบจะไม่ปฏิบัติตาม โดยการเรียกโปรแกรมปรับปรุง ถ้าการเรียกลบล้มเหลว ข้อมูลในเขตข้อมูลสมาชิกถูกปล่อยไม่เปลี่ยนแปลง?
ตัวอย่าง
ตัวอย่างนี้แสดงชุดระเบียนถูกสร้างขึ้นบนกรอบของฟังก์ชัน ตัวอย่างสมมติมี m_dbCust สมาชิกตัวแปรของชนิดที่CDatabaseแล้วเชื่อมต่อกับแหล่งข้อมูล?
/ / สร้างวัตถุ CRecordset ได้รับ
CCustSet rsCustSet (แอมป์ m_dbCust);
rsCustSet.Open ()
ถ้า (rsCustSet.IsEOF () || ! () rsCustSet.CanUpdate ||
! rsCustSet.CanTransact ())
กลับ
ถ้า (! m_dbCust.BeginTrans ())
{
/ / ทำการจัดการกับความล้มเหลว
}
อื่น
{
/ / อาจเลื่อนไปที่ระเบียนใหม่...
/ / ลบระเบียนปัจจุบัน
rsCustSet.Delete ()
// ...
/ / สิ้นสุดคำสั่งสำหรับธุรกรรมนี้
ถ้า (<ผู้ใช้ยืนยันธุรกรรม >)
m_dbCust.CommitTrans ()
อื่น / / ผู้เปลี่ยนใจ
m_dbCust.Rollback ()
}
//
ภาพรวม CRecordset |nbsp สมาชิกของคลาส| แผนภูมิของลำดับชั้น(&N)
ดูเพิ่มเติมnbspDatabase::BeginTrans, CDatabase::CommitTrans, CDatabase::Rollback, CDBException(&N)