في مرحلة من المراحل ستضطر إلى أن تتعامل بالكود لتبدو برامجك بشكل احترافي هذا أمر .. وأمر آخر لكي تكون قواعد البيانات في يديك كالعجين ..
لذا سنتعلم من بعضنا اليوم عن التحديث بنوعيه .. بلا شروط .. وبالشروط .. وبسم الله الرحمن الرحيم نبدأ
Dim sqlUpdate As String
هنا يقوم الكود بتحديث الحقل في جميع سجلات الجدول المختار بالقيمة الجديدة دون شرط
حقل رقم بقيمة محددة في الكود
sqlUpdate = "UpDate tbl1 SET Id=333"
حقل رقم بقيمة محددة في مربع نص باسم txtNO
sqlUpdate = "UpDate tbl1 SET Id=" & Me.txtNO
حقل نص بقيمة محددة في الكود
sqlUpdate = "UpDate tbl1 SET Id='أحمد'''
حقل نص بقيمة محددة في مربع نص باسم txtName
sqlUpdate = "UpDate tbl1 SET Id='" & Me.txtName & "'"
حقل تاريخ بقيمة محددة في الكود
sqlUpdate = "UpDate tbl1 SET Id=# 01-12-1424 #"
حقل تاريخ بقيمة محددة في مربع نص باسم txtDate
sqlUpdate = "UpDate tbl1 SET Id=#" & Me.txtDate & "#"
========================
هنا يقوم الكود بتحديث الحقل في جميع سجلات الجدول المختار بالقيمة الجديدة بالشرط
حقل رقم بقيمة محددة في الكود
sqlUpdate = "UpDate tbl1 SET Id=555" sqlUpdate = sqlUpdate & " Where id=333"
حقل رقم بقيمة محددة في مربع نص باسم txtId
sqlUpdate = "UpDate tbl1 SET Id=" & Me.txtNO sqlUpdate = sqlUpdate & " Where id=" & Me.txtId
حقل نص بقيمة محددة في الكود
sqlUpdate = "UpDate tbl1 SET Id='أحمد'" sqlUpdate = sqlUpdate & " Where id='محمد''
حقل نص بقيمة محددة في مربع نص باسم txtNewName
sqlUpdate = "UpDate tbl1 SET Id='" & Me.txtName & "'" sqlUpdate = sqlUpdate & " Where id='" & Me.txtNewName & "'"
حقل تاريخ بقيمة محددة في الكود
sqlUpdate = "UpDate tbl1 SET Id=# 01-12-1424 #" sqlUpdate = sqlUpdate & " Where id=# 01-12-1423 #"
حقل تاريخ بقيمة محددة في مربع نص باسم txtNewDate
sqlUpdate = "UpDate tbl1 SET Id=#" & Me.txtDate & "#" 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