Private Sub Command1_Click()
On Error GoTo eHDim Conn As New ADODB.Connection
Dim BeginTransBol As Boolean '是否已开始一个 ado 事务
Dim ConnStr As String
Dim cSql As StringBeginTransBol = False
ConnStr = "Provider=SQLOLEDB.1;Persist Security Info=True; Initial Catalog=[数据库名];Data Source=[服务器名]; User ID=sa;Password=;" '基于用户名和密码的访问
'ConnStr = "Provider=SQLOLEDB.1;Persist Security Info=False;Initial Catalog=[数据库名];Data Source=[服务器名]; Integrated Security=SSPI;" '基于 windows 集成的安全访问
'ConnStr = "provider=Microsoft.Jet.OLEDB.4.0;Data source =" + [Access97、Access2000 数据库路径及名称] + " ;Persist Security Info=False;Jet OLEDB:Database Password=" + [数据库密码] '访问 Access 数据库
With adoCnn
If .State = adStateOpen Then .Close
.ConnectionString = ConnStr
.Open
If .State = adStateOpen Then '数据库打开成功
'开始一个事物,设置事务的隔离层为 adXactReadCommitted .IsolationLevel = adXactReadUncommitted 'adXactReadCommitted
.BeginTrans '开始一个事务
BeginTransBol = True
cSql = "DELETE * FROM [表]" '此时并未真正删除,直到 CommitTrans 提交当前事务或者回滚事务才是真正的删除 .Execute cSql, , adCmdText + adExecuteNoRecords '参数 adExecuteNoRecords 表示不返回任何记录集,可提高执行速度 .CommitTrans '提交当前事务
BeginTransBol = False
Else '数据库打开失败
'... End If
End With
Exit Sub
eH:
If adoCnn.State = adStateOpen And BeginTransBol Then adoCnn.RollbackTrans '有错误发生,回滚当前事务
MsgBox Err.Description + "(错误号:" + CStr(Err.Number) + ")", vbCritical, "出错拉 . . ."End Sub
On Error GoTo eHDim Conn As New ADODB.Connection
Dim BeginTransBol As Boolean '是否已开始一个 ado 事务
Dim ConnStr As String
Dim cSql As StringBeginTransBol = False
ConnStr = "Provider=SQLOLEDB.1;Persist Security Info=True; Initial Catalog=[数据库名];Data Source=[服务器名]; User ID=sa;Password=;" '基于用户名和密码的访问
'ConnStr = "Provider=SQLOLEDB.1;Persist Security Info=False;Initial Catalog=[数据库名];Data Source=[服务器名]; Integrated Security=SSPI;" '基于 windows 集成的安全访问
'ConnStr = "provider=Microsoft.Jet.OLEDB.4.0;Data source =" + [Access97、Access2000 数据库路径及名称] + " ;Persist Security Info=False;Jet OLEDB:Database Password=" + [数据库密码] '访问 Access 数据库
With adoCnn
If .State = adStateOpen Then .Close
.ConnectionString = ConnStr
.Open
If .State = adStateOpen Then '数据库打开成功
'开始一个事物,设置事务的隔离层为 adXactReadCommitted .IsolationLevel = adXactReadUncommitted 'adXactReadCommitted
.BeginTrans '开始一个事务
BeginTransBol = True
cSql = "DELETE * FROM [表]" '此时并未真正删除,直到 CommitTrans 提交当前事务或者回滚事务才是真正的删除 .Execute cSql, , adCmdText + adExecuteNoRecords '参数 adExecuteNoRecords 表示不返回任何记录集,可提高执行速度 .CommitTrans '提交当前事务
BeginTransBol = False
Else '数据库打开失败
'... End If
End With
Exit Sub
eH:
If adoCnn.State = adStateOpen And BeginTransBol Then adoCnn.RollbackTrans '有错误发生,回滚当前事务
MsgBox Err.Description + "(错误号:" + CStr(Err.Number) + ")", vbCritical, "出错拉 . . ."End Sub
解决方案 »
- 字符串转换到结构时碰到汉字取得位数不对的问题(急)
- 菜鸟请教问题了:有关VB中Excel的应用。
- vb6.0中,字体大小怎么随分辨率而改变
- 98没有ado2.5我要怎样才能打包给它或者要装什么软件才有
- 关于vb+oracle开发的问题,为什么我一运行我的应用程序,系统就写一个set.log文件,吧我的机器搞得很慢!为什么阿。事什么原因
- 写SQL库问题
- VBScript 高手请看----奇怪的问题
- to ferrytang(水油) picturepostion属性!在那里找不到啊flat button也找不到
- windows 應用程序接口問題?
- 急,关于vb多媒体
- 怎么把数据类型为image的字段的图片数据从一个表导到另一个表中,用程序实现!!!
- 如何使用FindWindowEx遍历各文本框?
dim rs as new adodb.recordset
dim sql as string
sql="select sum([字段]) as sumrecord from [表] where [字段]=[值]"
rs.open conn,1,1
text=sumrecord
dim rs as adodb.recordset
dim sql as string
sql="select sum([字段]) as sumrecord from [表] where [字段]=[值]"
set rs=new adodb.recordset
rs.open sql,conn, adOpenKeyset, adLockReadOnly, 1
if not(rs.bof and rs.eof) then text.text=rs("sumrecord").value写代码的风格中最好把默认属性也写出来。
这句不可以像ASP中一样:rs.open conn,1,1吗?能解释一下这些是干什么的?跟ASP中的区别。
在VB中一定要吗,如果不要会出错吗?
//这句不可以像ASP中一样:rs.open conn,1,1吗可以
在VB中一定要吗,如果不要会出错吗?就是在asp中也要判断啊。。
//在VB中一定要吗,如果不要会出错吗?如果不判断一下直接去读值就会出错的