http://www.connectionstrings.com/连接字符串!用ado的一个简单例子:Private Sub Form_Load() Dim Cnn As New ADODB.Connection Dim Rs As New ADODB.Recordset Cnn.ConnectionString = "数据库连接字符串" Cnn.Open Rs.Open "SELECT * FROM Info WHERE 编号='" & 条件 & "'", Cnn, adOpenKeyset, adLockReadOnly, adCmdText If Rs.EOF And Rs.BOF Then Else Text1.Text = Rs("编号") Text2.Text = Rs("姓名") Text3.Text = Rs("性别") End If Rs.Close Set Rs = Nothing Cnn.Close Set Cnn = Nothing End Sub
If DbConnection.State = adStateOpen And Not IsEmpty(adStateOpen) Then DbConnection.Close End If ConnStr = "Provider=MSDASQL.1;Persist Security Info=False;DRIVER=" & DriveName(DbType) & ";" & UserPwd(DbType) & "DBQ=" & FilePath DbConnection.ConnectionString = ConnStr DbConnection.Open DoEvents
If Err.Number = 0 Then DbStyle = tDbType(DbType) CreateOtherConn = True Else Err.Clear DbStyle = "" CreateOtherConn = False End If End Function
操纵数据库不提倡用控件,特别是Adodc这个家伙。
都误解我的意思了,我是说我现在只知道ado比如 所用控件:microsoft activex data object 2.7 libriary 方法:dim conn as new adodb.connection dim rs as new adodb.recordset str="provider=microsoft.jet.oledb.4.0;data source="&app.path("db1.mdb") conn.open str rs.open "select * from table",conn,1,1 到这里连接成功就可以了。 现在我想知道dao,data.......等其他连接数据库的控件和方法。
晕! microsoft activex data object 2.7 libriary 是控件?
何况,会ADO还去学DAO,简直就是浪费时间啦。
刚开始看国人的书是比较晕的,我以前有同感,自从别人给了一个连接代码后,我现在都用它。根本用不着什么控件,就是些连接代码要在"工程“--引用--选择microsoft activex data object 2.7 libriary 才能运行。然后不用加什么数据库控件, dim conn as new adodb.connection dim rs as new adodb.recordset str="provider=microsoft.jet.oledb.4.0;data source="&app.path("db1.mdb") conn.open str rs.open "select * from table",conn,1,1 然后给文本款什么赋值就是text1.text=rs("字段名") 看国人的(包括微软的书)都是用那个难用的控件,很晕的。
文本绑定: dim conn as new adodb.connection dim rs as new adodb.recordset str="provider=microsoft.jet.oledb.4.0;data source="&app.path("db1.mdb") conn.open str rs.open "select * from table",conn,1,1 text1.text=rs("字段名")
Dim Cnn As New ADODB.Connection
Dim Rs As New ADODB.Recordset
Cnn.ConnectionString = "数据库连接字符串"
Cnn.Open
Rs.Open "SELECT * FROM Info WHERE 编号='" & 条件 & "'", Cnn, adOpenKeyset, adLockReadOnly, adCmdText
If Rs.EOF And Rs.BOF Then
Else
Text1.Text = Rs("编号")
Text2.Text = Rs("姓名")
Text3.Text = Rs("性别")
End If
Rs.Close
Set Rs = Nothing
Cnn.Close
Set Cnn = Nothing
End Sub
Dim CT As SmDataDiap'
'创建一个连接(连接到SQL)
'函数名:CreateSqlConn
'参数: DbConnection ADODB连接,ServerName 服务器名,DBname 数据库名,UserID 登录用户名,UPw 登录密码,Timerout 连接超时
'返回值:TRUE 连接成功.FALSE 连接失败.
'例: CreateSqlConn p_cnn,"CJH","cjherp001","sa","123",15
'
Public Function CreateSqlConn(ByRef DbConnection As ADODB.Connection, _
ServerName As String, _
DbName As String, _
UserID As String, _
UPw As String, _
Optional Timerout As Long = 15) As Boolean
Dim ReturnVal As Boolean On Error Resume Next If DbConnection.State = adStateOpen And Not IsEmpty(adStateOpen) Then
DbConnection.Close
End If
'/连接1
DbConnection.Provider = "MSDASQL.1"
DbConnection.ConnectionString = "Driver={SQL Server};Server=" & ServerName & ";DataBase=" & DbName & ";Uid=" & UserID & ";Pwd=" & UPw & ";APP=" & App.Path & ";WSID=" & UserID & ";Connect Timeout=" & Timerout & ";"
'/--------------------------------------------------------------------------------------------
'/连接2 Provider=SQLOLEDB.1;Password=123;Persist Security Info=True;User ID=sa;Initial Catalog=pubs;Data Source=cjh
'/ DbConnection.Provider = "SqloleDB.1"
'/ DbConnection.ConnectionString = "Database=" & DBname & ";Server=" & ServerName & ";Uid=" & UserID & ";Pwd=" & UPw & ";Connect Timeout=" & Timerout & ";"
'/---------------------------------------------------------------------------------------------
DbConnection.ConnectionTimeout = Timerout
DbConnection.CommandTimeout = Timerout
DbConnection.Open
DoEvents
If Err.Number = 0 Then
DbStyle = "SQL"
ReturnVal = True
Else
Err.Clear
DbStyle = ""
ReturnVal = False
End If
CreateSqlConn = ReturnVal
End Function'
'创建一个连接(连接到ACCESS)
'函数名:CreateMdbConn
'参数: DbConnection ADODB连接,MdbPath ACCESS数据库路径,Provider JET引擎版本,UserID 登录用户名,UserWord 登录密码
'返回值:TRUE 连接成功.FALSE 连接失败.
'例: CreateMdbConn p_cnn,"C:\DEMO.MDB","sa","123"
Public Function CreateMdbConn(ByRef DbConnection As ADODB.Connection, _
MdbPath As String, _
Optional Provider = "Microsoft.Jet.OLEDB.4.0;", _
Optional UserID As String = "admin", _
Optional UserWord As String = "") As Boolean
Dim ConStr As String
On Error Resume Next
If DbConnection.State = adStateOpen And Not IsEmpty(adStateOpen) Then
DbConnection.Close
End If
'/------------------------------------------------------------------
ConStr = "Provider=" & Provider & _
"Data Source=" & MdbPath & ";" & _
"Jet OLEDB:Database Password=" & UserWord & ";" & _
"User ID=" & UserID & ";" DbConnection.ConnectionString = ConStr
DbConnection.Open
DoEvents If Err.Number = 0 Then
DbStyle = "MDB"
CreateMdbConn = True
Else
Err.Clear
DbStyle = ""
CreateMdbConn = False
End If
End Function'
'创建一个连接(连接到其它数据库类型)
'函数名:CreateOtherConn
'参数: DbConnection ADODB连接,FilePath 数据库路径,UserName 登录用户名,PassWord 登录密码,DbType SmDbType枚举数据库类型
'返回值:TRUE 连接成功.FALSE 连接失败.
'例:
'CreateOtherConn Cnn, "E:\CjhLx\dbf", , , FoxPro
'StrSql = "select * from [employee.dbf]"
'Set Rs = RsOpen(Cnn, StrSql)
'Set DataGrid1.DataSource = RsPublic Function CreateOtherConn(ByRef DbConnection As ADODB.Connection, _
FilePath As String, _
Optional UserName As String = "admin", _
Optional PassWord As String = "", _
Optional DbType As SmDbType = Access) As Boolean
Dim ConnStr As String
Dim DriveName(5) As String
Dim tDbType(5) As String
Dim UserPwd(5) As String
'/驱动程序
DriveName(1) = "{Microsoft Access Driver (*.mdb)}"
DriveName(2) = "{Microsoft Excel Driver (*.xls)}"
DriveName(3) = "{Microsoft Text Driver (*.txt; *.csv)}"
DriveName(4) = "{Microsoft Visual FoxPro Driver};SourceType=DBF"
DriveName(5) = "{Microsoft dBase Driver (*.dbf)}"
'/类型
tDbType(1) = "MDB"
tDbType(2) = "XLS"
tDbType(3) = "TXT"
tDbType(4) = "FDB"
tDbType(5) = "DDB"
'/用户名和密码.
UserPwd(1) = "Uid=" & UserName & ";Pwd=" & PassWord & ";"
UserPwd(2) = "Uid=" & UserName & ";Pwd=" & PassWord & ";"
UserPwd(3) = ""
UserPwd(4) = "Uid=" & UserName & ";Pwd=" & PassWord & ";"
UserPwd(5) = "Uid=" & UserName & ";Pwd=" & PassWord & ";"
On Error Resume Next
If DbConnection.State = adStateOpen And Not IsEmpty(adStateOpen) Then
DbConnection.Close
End If
ConnStr = "Provider=MSDASQL.1;Persist Security Info=False;DRIVER=" & DriveName(DbType) & ";" & UserPwd(DbType) & "DBQ=" & FilePath
DbConnection.ConnectionString = ConnStr
DbConnection.Open
DoEvents
If Err.Number = 0 Then
DbStyle = tDbType(DbType)
CreateOtherConn = True
Else
Err.Clear
DbStyle = ""
CreateOtherConn = False
End If
End Function
所用控件:microsoft activex data object 2.7 libriary
方法:dim conn as new adodb.connection
dim rs as new adodb.recordset
str="provider=microsoft.jet.oledb.4.0;data source="&app.path("db1.mdb")
conn.open str
rs.open "select * from table",conn,1,1
到这里连接成功就可以了。
现在我想知道dao,data.......等其他连接数据库的控件和方法。
microsoft activex data object 2.7 libriary 是控件?
dim conn as new adodb.connection
dim rs as new adodb.recordset
str="provider=microsoft.jet.oledb.4.0;data source="&app.path("db1.mdb")
conn.open str
rs.open "select * from table",conn,1,1
然后给文本款什么赋值就是text1.text=rs("字段名")
看国人的(包括微软的书)都是用那个难用的控件,很晕的。
一个是可以直接引用,同你说的一个就是在form中添加adodc控件,就可以使用adodb类
有意者與[email protected]聯系
老板急要...
dim conn as new adodb.connection
dim rs as new adodb.recordset
str="provider=microsoft.jet.oledb.4.0;data source="&app.path("db1.mdb")
conn.open str
rs.open "select * from table",conn,1,1 text1.text=rs("字段名")