我在做设计的时候试着用vb写com组件,调用的是ado2.1。功能是写数据库,代码如下:
Private mCnnDB As New adodb.Connection
Private msUserName As String
Public Property Let UserName(sUserName As String)
msUserName = sUserName
End Property
Public Property Get UserName() As String
UserName = msUserName
End Property
Public Sub ConnOdbc(msUserName As String)
Dim rs As New adodb.Recordset
Dim sql As String
mCnnDB.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=F:\mywork\dbase\mydb.mdb"
mCnnDB.Open
sql = "select * from student"
With rs
.Open sql, mCnnDB, 1, 3
.AddNew
.Fields("UserName") = UserName
.Close
End With
Set rs = Nothing
mCnnDB.Close
Set mCnnDB = Nothing
End Sub
调用代码如下:
dll为prjadd.dll,类名为DataAccess
Private Sub Command1_Click()
Dim a As prjadd.DataAccess
a.UserName = Text1.Text
Call a.ConnOdbc(a.UserName)
End Sub
调试结果报错,望大虾们指点小弟~~~!
Private mCnnDB As New adodb.Connection
Private msUserName As String
Public Property Let UserName(sUserName As String)
msUserName = sUserName
End Property
Public Property Get UserName() As String
UserName = msUserName
End Property
Public Sub ConnOdbc(msUserName As String)
Dim rs As New adodb.Recordset
Dim sql As String
mCnnDB.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=F:\mywork\dbase\mydb.mdb"
mCnnDB.Open
sql = "select * from student"
With rs
.Open sql, mCnnDB, 1, 3
.AddNew
.Fields("UserName") = UserName
.Close
End With
Set rs = Nothing
mCnnDB.Close
Set mCnnDB = Nothing
End Sub
调用代码如下:
dll为prjadd.dll,类名为DataAccess
Private Sub Command1_Click()
Dim a As prjadd.DataAccess
a.UserName = Text1.Text
Call a.ConnOdbc(a.UserName)
End Sub
调试结果报错,望大虾们指点小弟~~~!
Dim a As new prjadd.DataAccess
a.UserName = Text1.Text
a.ConnOdbc a.UserName
End Sub
With rs
.Open sql, mCnnDB, 1, 3
.AddNew
.Fields("UserName") = UserName
.update
.Close
End With