افزودن، تغییر و حذف رکوردها و ساخت Recordset
فصل ۷ — افزودن، تغییر و حذف Record و کار با Select Query
SQL از VBA میتواند Record اضافه، Update یا Delete کند. Query Design راه مطمئنی برای ساخت SQL اولیه است؛ سپس Statement در String قرار میگیرد و RunSQL اجرا میشود.
Append/INSERT
INSERT INTO TargetTable (Field1, Field2)
SELECT Field1, Field2 FROM SourceTable;
Append Query چند Record را از Source به Target میافزاید. برای یک Record نیز میتوان INSERT با Value یا SELECT محدودشده ساخت.
UPDATE و DELETE
UPDATE Customers SET City = "Los Angeles" WHERE CustID=123;
DELETE FROM Customers WHERE CustID=123;
WHERE برای محدود کردن Action حیاتی است. بدون WHERE ممکن است همهٔ Recordها تغییر یا حذف شوند.
Action روی یک Record
Value کلید Record فعلی Form میتواند داخل SQL String قرار گیرد تا فقط همان Record تغییر کند. هنگام ساخت String باید Data Type و Quote موردنیاز Text/Date رعایت شود.
Select Query و Recordset
برای خواندن Resultهای SELECT در Code، ADO Recordset ساخته میشود. Connection معمولاً CurrentProject.Connection است و Recordset با SQL باز میشود. Cursor و Lock Type روی قابلیت پیمایش/ویرایش اثر دارند.
Dim cnn1 As ADODB.Connection
Dim MyRecordSet As New ADODB.Recordset
Set cnn1 = CurrentProject.Connection
MyRecordSet.ActiveConnection = cnn1
MyRecordSet.Open "SELECT * FROM Customers"
کار با Field و Record
پس از Open میتوان Field Value را خواند، MoveNext کرد، AddNew/Update انجام داد و در پایان Recordset را Close کرد. EOF/BOF برای تشخیص مرز Recordset کاربرد دارند.
شکلها و عناصر بصری این بخش