PDA

View Full Version : سوال: حذف تمامي فيلدهاي يک جدول



Pr0gr@mmer
یک شنبه 11 اسفند 1392, 14:48 عصر
سلام

برنامه ي ما با ADO به اکسس وصل هست،اما ميخوام با استفاده از يک کليک در وي بي 6 تمام مقادير فيلدهاي جداولم رو حذف کنم.
لطفا راهنمايي بفرماييد بنده با استفاده از حلقه خواستم اين کار رو انجام بدم اما خطا داشت.

در واقع ميخوام ديتابيسم رو صفر کنم يعني تمام فيلدهاي داخل جداولم رو حذف کنم.

ممنون

vbhamed
دوشنبه 12 اسفند 1392, 16:09 عصر
سلام
براي اينكار دستورات Sql مناسبتر از حلقه هستند

براي حذف مقادير يك فيلد بدون حذف ركوردها
On Error Resume Next

Dim cnn As New ADODB.Connection

cnn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Test.mdb;Persist Security Info=False"
cnn.Open
cnn.Execute "update table1 set field1=null"

cnn.Close

براي خالي كردن مقادير همه فيلدها بدون حذف ركوردها
On Error Resume Next

Dim cnn As New ADODB.Connection
Dim rs As New ADODB.Recordset

cnn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Test.mdb;Persist Security Info=False"
cnn.Open
rs.Open "Select * from table1 where 0", cnn, adOpenDynamic

Dim i%
For i = 0 To rs.Fields.Count - 1
cnn.Execute "update table1 set " & rs.Fields(i).Name & "=null"
Debug.Print rs.Fields(i).Name
Next

rs.Close
cnn.Close

براي حذف كل ركوردهاي يك جدول
On Error Resume Next

Dim cnn As New ADODB.Connection

cnn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Test.mdb;Persist Security Info=False"
cnn.Open
cnn.Execute "delete * from table1"

cnn.Close