я создал БД спомощью VisData ,ввёл её в ФлексГрид и у меня не добовляет новые записи в таблицу...никак не помойму почему....кто нить мож знает?
вот код кнопки:
Private Sub Command1_Click()
Dim k(7) As Variant, z(7) As Variant
Dim cmd As String
Dim sql As String
Dim cn As ADODB.Connection: Dim rs As ADODB.Recordset
cmd = "Provider=Microsoft.Jet.OLEDB.4.0;" & "Data Source=" & "C:\Program Files\Microsoft Visual Studio\VB98\Inf.mdb"
Set cn = New ADODB.Connection
With cn
.ConnectionString = cmd
.Open
End With
sql = "select*from Clients"
rs.CursorType = adOpenDynamic - ошибку пишет тут..With rs
.Open sql, cn, adOpenKeyset, adLockOptimistic
End With
With rs
.MoveLast
Dim f As Field
For Each f In rs.Fields
Next
z(t) = InputBox("ÂÂåäèòå äàííûå äëÿ çàíåñåíèÿ â ïîëå" & k(t), "Äîáàâëåíèÿ")
k(t) = f.Name
t = t + 1
End With
With rs
.AddNew Array(k(1), k(2), k(3), k(4), k(5), k(6), k(7)), Array(z(1), z(2), z(3), z(4), z(5), z(6), z(7))
End With
rs.Close: Set rs = Nothing
cn.Close: Set cn = Nothing
меня смущает, Array создаёт массив из набора элементов, а вот AddNew принимает вроде не массив...
и ещё...
With cn
.ConnectionString = cmd
.Open
End With
в книжках хню всякую повычитуют, а до конца то волом дочитать, так вот конструкция With/End With используется когда ты объекту не 2 свойства устанавливаешь, а 22 например...
так что на "коротких дистанциях" куда лучше смотрится просто