الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

الحذف بالكود

مغلق
بدأه أحمد الحربي في 25 أبريل 2004 · 0 رد · 835 مشاهدة · في قواعد بيانات Microsoft Access
مشاركة: واتساب X فيسبوك تيليجرام
#1

في مرحلة من المراحل ستضطر إلى أن تتعامل بالكود لتبدو برامجك بشكل احترافي هذا أمر .. وأمر آخر لكي تكون قواعد البيانات في يديك كالعجين ..

لذا سنتعلم من بعضنا اليوم عن الحذف بنوعيه .. بلا شروط .. وبالشروط .. وبسم الله الرحمن الرحيم نبدأ

Dim sqlUpdate As String

هنا يقوم الكود بحذف جميع سجلات الجدول المختار دون شرط

sqlUpdate = "Delete tbl1 FROM tbl1"

========================

هنا يقوم الكود بحذف جميع سجلات الجدول المختار التي توافق الشرط

حقل رقم بقيمة محددة في الكود

sqlUpdate = "Delete tbl1 FROM tbl1"
sqlUpdate = sqlUpdate & " Where id=333"

حقل رقم بقيمة محددة في مربع نص باسم txtId

sqlUpdate = "Delete tbl1 FROM tbl1"
sqlUpdate = sqlUpdate & " Where id=" & Me.txtId

حقل نص بقيمة محددة في الكود

sqlUpdate = "Delete tbl1 FROM tbl1"
sqlUpdate = sqlUpdate & " Where id='محمد''

حقل نص بقيمة محددة في مربع نص باسم txtNewName

sqlUpdate = "Delete tbl1 FROM tbl1'"
sqlUpdate = sqlUpdate & " Where id='" & Me.txtNewName & "'"

حقل تاريخ بقيمة محددة في الكود

sqlUpdate = "Delete tbl1 FROM tbl1"
sqlUpdate = sqlUpdate & " Where id=# 01-12-1423 #"

حقل تاريخ بقيمة محددة في مربع نص باسم txtNewDate

sqlUpdate = "Delete tbl1 FROM tbl1"
sqlUpdate = sqlUpdate & " Where id=#" & Me.txtNewDate & "#"

========

تنفيد عبارة sqlUpdate يكون بطريقتين :

1- عن طريق كائن DOCmd وعيب هذه الطريقة أنك لا يمكن أن تتمكن من نجاح التحديث مباشرة .. إلا بعبارة Select أخرى تتبعها بشرط القيمة الجديدة .. فإذا أرجعت عبارة Select سجلات فمعنى هذا نجاح التنفيذ وإلا فلا

DoCmd.SetWarnings False
DoCmd.RunSQL sqlUpdate

2- عن طريق ADO ومن خلالها تستطيع معرفة نجاحها أم لا من خلال الطريقة Error.Count للكائن Connection فإذا كان الكائن Error يساوي صفر فمعنى هذا نجاح التنفيذ وإلا فلا

Dim db As New ADODB.Connection
db.Open CurrentProject.Connection
db.Execute sqlUpdate

If db.Errors.Count <> 0 Then
   MsgBox "Error"
Else
   MsgBox "OK"
End If
db.Close
Set db = Nothing

هذا الموضوع مغلق.

مواضيع مشابهة