把CnRes.Update改为CnRes.UpdateBatch试试
解决方案 »
- VB读取CSV文件
- 如何在程序运行过程中让EXCEL保持在最小化状态?谢谢!
- 请问,在SQL2000数据库中显示0.00,该如何设置?在线等待....
- 关于学生选课系统
- vb中msgbox("",vbyesno + vbquestin)中逻辑值为6是咋回事?
- 一个奇怪的问题,关于rs.Open sql,conn,3,在线等.急啊!
- For each control in ??如何限定控件在一个容器中(非窗体)?
- 菜鸟在线求助 急!!!!!!!!!!!!!!!!!
- 有关短信
- 9月27日与VB之父--Alan Cooper交流
- 如何去掉数组中的重复值,再现等,达。答案正确马上给分,决不食言!!
- 如何编写像word一样可以选择打印机的程序.
Dim Cn As ADODB.Connection
Dim CnRes As ADODB.RecordsetPrivate Sub Command1_Click(
Set Cn = New ADODB.Connection Cn.Open "Provider=SQLOLEDB.1;Password=wqef;Persist Security Info=True;User ID=sa;Initial Catalog=LHJDB;Data Source=wp_sql"
Set CnRes = New ADODB.Recordset
CnRes.Open "select * from tc", Cn, "select * from tc", Cn, adOpenStatic, adLockBatchOptimistic
CnRes.AddNew
CnRes!Name = "明天"
CnRes.Update
CnRes.Close
Cn.Close
End Sub
CnRes.LockType = adLockOptimistic
CnRes.Open "tc", pConn, , , adCmdTable
CnRes.AddNew
Option Explicit
Dim Cn As ADODB.Connection
Dim CnRes As ADODB.RecordsetPrivate Sub Command1_Click(
Set Cn = New ADODB.Connection Cn.Open "Provider=SQLOLEDB.1;Password=wqef;Persist Security Info=True;User ID=sa;Initial Catalog=LHJDB;Data Source=wp_sql"
Set CnRes = New ADODB.Recordset
CnRes.Open "select * from tc", Cn, adOpenStatic, adLockBatchOptimistic
CnRes.AddNew
CnRes!Name = "明天"
CnRes.Update
CnRes.Close
Cn.Close
End Sub
Cn.Open
CnRes.Open "select * from tc", Cn, adOpenStatic, adLockBatchOptimistic
CnRes.AddNew
CnRes!Name = "明天"
CnRes.Update
CnRes.Close
Cn.Close
End Sub
如果是我,这会这么写: dim strSQL as string
Dim CNN as object
set cnn=createobject("adodb.connection")
With CNN
.ConnectionString = Provider=SQLOLEDB.1;Password=wqef;Persist Security Info=True;User ID=sa;Initial Catalog=LHJDB;Data Source=wp_sql .ConnectionTimeout = 30
.CursorLocation = adUseClient 'aduseclient=3
strsql="Insert tc(name) values('明天')"
.open
.execute strsql
.close
End Withis all right,simple?
如果是我,这会这么写: dim strSQL as string
Dim CNN as object
set cnn=createobject("adodb.connection")
With CNN
.ConnectionString = Provider=SQLOLEDB.1;Password=wqef;Persist Security Info=True;User ID=sa;Initial Catalog=LHJDB;Data Source=wp_sql .ConnectionTimeout = 30
.CursorLocation = adUseClient 'aduseclient=3
strsql="Insert tc(name) values('明天')"
.open
.execute strsql
.close
End Withis all right,simple?____________如果用变量赋值,把Insert tc(name) values('明天') ‘明天’的位置用一个变量AABB代替,并且再增加一个数字型的字段GZ ,也是用变量CCDD赋值,这个Insert语句该怎么写?
Dim Cn As ADODB.Connection
Dim CnRes As ADODB.RecordsetPrivate Sub Command1_Click()
Cn.ConnectionString = "Provider=SQLOLEDB.1;Persist Security Info=False;User ID=sa;Initial Catalog=test62002;Data Source=dataserver"
Cn.Open
CnRes.Open "select * from tc", Cn, adOpenStatic, adLockOptimistic
CnRes.AddNew
CnRes!Name = "明天"
CnRes.Update
CnRes.Close
Cn.Close
End SubPrivate Sub Form_Load()
Set Cn = New ADODB.Connection
Set CnRes = New ADODB.Recordset
End Sub
CnRes.Open "select * from tc", Cn, adOpenStatic, adLockBatchOptimist
改成:
CnRes.Open "select * from tc", Cn, adOpenStatic, adLockOptimistic方法2:
CnRes.Update
改成:
CnRes.Update
CnRes.UpdateBatch
dim rsname as stringdim db as database
dim rs as recordsetprivate sub command1_click()
dbname="c:\XXX.mdb"
rsname=AUTHOR
set db=dbengine.opendatabase(dbname)
set rs=db.openrecordset(rsname,dbopendynaset)
with rs
.addnew
.updata
end with
end sub
用动态集创建记录
既然锁定用了batch,update也得用UpdateBatch
如果用Update,锁定方式就用adLockOptimistic
.update
CnRes.Open "select * from tc", Cn, adOpenStatic, adLockBatchOptimistic
中的adOpenStatic改为: adOpenDynamic
更新的时候要用UpdateBatch
adLockOptimistic是用于记录集的缓冲,就是可以用addnew追加多个记录,然后用updatebatch一起更新记录.
你用的是一条记录的更新,建议用adLockOptimistic