Private Sub Form_Load() Dim rstList As New ADODB.Recordset Dim cnnstr As New ADODB.Connection Dim gprovider As String gprovider = "Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=Test;Data Source=(local)" cnnstr.CursorLocation = adUseClient cnnstr.Open gprovider rstList.Open "select * from costfitting where item='" + Text1.Text + "'", cnnstr, adOpenKeyset, adLockBatchOptimistic Set DataGird1.DataSource = rstList End Sub 如上代码所示,将rstlist对象的LockType属性设置为adLockBatchOptimistic,无论你对rstlist数据集作什么操作,都不会对数据库产生影响。只有当你最后使用rstlist.updateBatch的时候,才会将你对数据集的更新返回到数据库中去。 其实你还可以将rstlist对象的LockType属性设置为adLockReadOnly,这样的话,及时你使用rstlist.updatebatch,也不会对数据库产生任何的影响。
如: dim rs as new adodb.recordset With RS With .Fields .Append "kk", adVarChar, 25 .Append "hh", adVarChar, 25 .Append "ff", adInteger End With .Open End With 声明一个记录集,初始化下字段. RS.ADDNEW rs(0).value=.. rs(1).value=.. rs(2).value=.. rs.update 给记录集赋值,然后对该记录集赋值
还可以用rs.clone方法复制一个副本,然后关闭源rs,对这个副本进行编辑...
Private Sub Form_Load()
Dim rstList As New ADODB.Recordset
Dim cnnstr As New ADODB.Connection
Dim gprovider As String
gprovider = "Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=Test;Data Source=(local)"
cnnstr.CursorLocation = adUseClient
cnnstr.Open gprovider
rstList.Open "select * from costfitting where item='" + Text1.Text + "'", cnnstr, adOpenKeyset, adLockBatchOptimistic
Set DataGird1.DataSource = rstList
End Sub
如上代码所示,将rstlist对象的LockType属性设置为adLockBatchOptimistic,无论你对rstlist数据集作什么操作,都不会对数据库产生影响。只有当你最后使用rstlist.updateBatch的时候,才会将你对数据集的更新返回到数据库中去。
其实你还可以将rstlist对象的LockType属性设置为adLockReadOnly,这样的话,及时你使用rstlist.updatebatch,也不会对数据库产生任何的影响。
dim rs as new adodb.recordset
With RS
With .Fields
.Append "kk", adVarChar, 25
.Append "hh", adVarChar, 25
.Append "ff", adInteger
End With
.Open
End With
声明一个记录集,初始化下字段.
RS.ADDNEW
rs(0).value=..
rs(1).value=..
rs(2).value=..
rs.update
给记录集赋值,然后对该记录集赋值