我想问下。有时候在通用里定义了。虽然我现在东西做出来了。但是我想了解更深入的。书上只是说了下。但是我想具体根据自己意思理解下。希望大家帮忙解答下 下面两个问题
Dim rs As ADODB.Recordset
dim CN As ADODB.Connection这样如果在连接数据库里 按钮里 直接可以调用通用连接了么?
Private Sub commond_Click()
cn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\data\qx.mdb;Persist Security Info=False"
rs.Open "select * from ab", cn, adOpenKeyset '打开记录集
'Text29.Text = rs.Fields("id")
End Sub有的直接定义到按钮里 这样写法就是不调用通用里的连接么?定义新的ADODB.CONNECTION ?
Private Sub commond_Click()
Dim cn As New ADODB.Connection
Dim rs As New ADODB.Recordset
cn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\data\1.mdb;Persist Security Info=False"
rs.Open "select * from ab", cn, adOpenKeyset '打开记录集
Text29.Text = rs.Fields("id")
End Sub这样理解对么?上面问题--------------------------底下这个问题 。 看看 RS已经写了连接。 为什么
还要写个SET RS NEW ADODB.Recordset 这样写是多余的么?
以及 Set cnn = New ADODB.Connection Dim rs As ADODB.Recordset
Set rs = New ADODB.Recordset
Dim cnn As ADODB.Connection
Set cnn = New ADODB.Connection
cnn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\data\qx.mdb;Persist Security Info=False"
Dim rs As ADODB.Recordset
dim CN As ADODB.Connection这样如果在连接数据库里 按钮里 直接可以调用通用连接了么?
Private Sub commond_Click()
cn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\data\qx.mdb;Persist Security Info=False"
rs.Open "select * from ab", cn, adOpenKeyset '打开记录集
'Text29.Text = rs.Fields("id")
End Sub有的直接定义到按钮里 这样写法就是不调用通用里的连接么?定义新的ADODB.CONNECTION ?
Private Sub commond_Click()
Dim cn As New ADODB.Connection
Dim rs As New ADODB.Recordset
cn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\data\1.mdb;Persist Security Info=False"
rs.Open "select * from ab", cn, adOpenKeyset '打开记录集
Text29.Text = rs.Fields("id")
End Sub这样理解对么?上面问题--------------------------底下这个问题 。 看看 RS已经写了连接。 为什么
还要写个SET RS NEW ADODB.Recordset 这样写是多余的么?
以及 Set cnn = New ADODB.Connection Dim rs As ADODB.Recordset
Set rs = New ADODB.Recordset
Dim cnn As ADODB.Connection
Set cnn = New ADODB.Connection
cnn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\data\qx.mdb;Persist Security Info=False"
在哪里定义的变量就在哪有效,离开这个区域就不存在了。
比如:
Private Sub commond_Click()
'这是临时变量
Dim cn As New ADODB.Connection
Dim rs As New ADODB.Recordset
'使用变量
set cn = nothing
set rs = nothing
End Sub
这里的变量cn和rs就只能在按钮里使用,离开了按钮,这两个变量就不存在了。
又比如:'这是窗体级变量,窗体存在变量才会存在。
dim cn as adodb.connection
dim rs as adodb.recordsetprivate sub command1_click()
set cn = new adodb.connection
set rs = new adodb.recordset
'调用变量的代码
end sub
'用new关键字定义的变量会自动实例化化
dim cn as new adodb.connection
dim rs as new adodb.recordset'不用new定义的对象,需要实例化对象,再使用。
dim cn as adodb.connection
dim rs as adodb.recordsetset cn = new adodb.connection
set rs = new adodb.recordset对于一些对象,你可以创建或者获取它,代码类似下面的。set cn = createobject("ADODB.Connection")
set oXlsApp = getobject(,"Excel.Application")
2.不是多余,见1F. 简单点就是有一个new
'假如之前调用过下面这两行的代码,那你的问题就是可以。
'set cn = new adodb.connection
'set rs = new adodb.recordset
cn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\data\qx.mdb;Persist Security Info=False"
rs.Open "select * from ab", cn, adOpenKeyset '打开记录集
'Text29.Text = rs.Fields("id")
End Sub有的直接定义到按钮里 这样写法就是不调用通用里的连接么?定义新的ADODB.CONNECTION ?是的。底下这个问题 。 看看 RS已经写了连接。 为什么
还要写个SET RS NEW ADODB.Recordset 这样写是多余的么?不多余,前面已经说明了这个问题的原因。