上面已经有人贴了,我再贴一点 引用微软 ms acticex data object 2.6 library Option Explicit Private conn1 As ADODB.Connection Private rs1 As ADODB.RecordsetPrivate Sub Command2_Click() Dim dbfilename As String Dim strsql As String Dim ConnectString As String Dim i As Integer Set conn1 = New ADODB.Connection dbfilename = "F:\csdn_vb\database\listbox\article1.mdb" ConnectString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & dbfilename & ";Persist Security Info=False;" conn1.Open ConnectStringSet rs1 = New ADODB.Recordsetstrsql = "select * from mz" rs1.Open strsql, conn1, 1, 3rs1.AddNew rs1.Fields("mc") = Text1.Text rs1.Fields("memo") = Text2.Text rs1.Fields("sl") = 192.22 rs1.Updatestrsql = "Create table WTSend ( SMSID AUTOINCREMENT, SMSMOBILE TEXT(20), SMSTEXT TEXT(255), SMSTIME TEXT(20), TASKID NUMBER, TASKSTATUS NUMBER )" conn1.Execute strsql End Sub
是的,ADO是一个接口,它将好多的细节封装了起来。
ado和odbc api的区别在哪呢?
感觉用ADO方便,可行,没什么不好的。要访问数据库就用ADO吧。 我也贴一点关于ADO的吧。 引用 Acticex Data object 2.5 library Option Explicit Dim objCn As New Connection Dim objRs As New Recordset Dim strCn As String, strSQL As StringPrivate Sub Form_Load() strCn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\CyjData.mdb;Persist Security Info=False" Set objCn = New ADODB.Connection With objCn .Provider = "Microsoft.Jet.OLEDB.4.0" .ConnectionString = strCn .Open End With strSQL = "SELECT * FROM Member" Set objRs = New ADODB.Recordset objRs.ActiveConnection = objCn objRs.Open (strSQL) objRs.MoveFirst With objRs If Not .BOF Or Not .EOF Then .MoveFirst While Not .EOF Set itmX = ListView1.ListItems.Add(, , CStr(.Fields("»áÔ±±àºÅ"))) For i = 1 To 14 If Not IsNull(.Fields(i)) Then itmX.SubItems(i) = CStr(.Fields(i)) End If Next .MoveNext Wend
Else MsgBox ("ÎÞ»áÔ±¼Ç¼¿ÉÐ޸ģ¬ÇëÌí¼Ó»áÔ±¼Ç¼£¡") Unload Me End If .Close End With End Sub
Dim rs As New Recordset
db_string = "Provider=SQLOledb.1;Data Source=" & sql_server & ";Initial Catalog=" & sql_data_name & ";User ID=" & sql_login_name & ";Password=" & sql_login_pwd & ";Persist Security Info=False"
rs.Open "select * from 你的表名", conn, adOpenKeyset, adLockOptimistic
.....
rs.Close
Set rs = Nothing
conn.Close
Set conn = Nothing
引用微软 ms acticex data object 2.6 library
Option Explicit
Private conn1 As ADODB.Connection
Private rs1 As ADODB.RecordsetPrivate Sub Command2_Click()
Dim dbfilename As String
Dim strsql As String
Dim ConnectString As String
Dim i As Integer
Set conn1 = New ADODB.Connection
dbfilename = "F:\csdn_vb\database\listbox\article1.mdb"
ConnectString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & dbfilename & ";Persist Security Info=False;"
conn1.Open ConnectStringSet rs1 = New ADODB.Recordsetstrsql = "select * from mz"
rs1.Open strsql, conn1, 1, 3rs1.AddNew
rs1.Fields("mc") = Text1.Text
rs1.Fields("memo") = Text2.Text
rs1.Fields("sl") = 192.22
rs1.Updatestrsql = "Create table WTSend ( SMSID AUTOINCREMENT, SMSMOBILE TEXT(20), SMSTEXT TEXT(255), SMSTIME TEXT(20), TASKID NUMBER, TASKSTATUS NUMBER )"
conn1.Execute strsql
End Sub
我也贴一点关于ADO的吧。
引用 Acticex Data object 2.5 library
Option Explicit
Dim objCn As New Connection
Dim objRs As New Recordset
Dim strCn As String, strSQL As StringPrivate Sub Form_Load()
strCn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\CyjData.mdb;Persist Security Info=False"
Set objCn = New ADODB.Connection
With objCn
.Provider = "Microsoft.Jet.OLEDB.4.0"
.ConnectionString = strCn
.Open
End With strSQL = "SELECT * FROM Member"
Set objRs = New ADODB.Recordset
objRs.ActiveConnection = objCn
objRs.Open (strSQL)
objRs.MoveFirst
With objRs
If Not .BOF Or Not .EOF Then
.MoveFirst
While Not .EOF
Set itmX = ListView1.ListItems.Add(, , CStr(.Fields("»áÔ±±àºÅ")))
For i = 1 To 14
If Not IsNull(.Fields(i)) Then
itmX.SubItems(i) = CStr(.Fields(i))
End If
Next
.MoveNext
Wend
Else
MsgBox ("ÎÞ»áÔ±¼Ç¼¿ÉÐ޸ģ¬ÇëÌí¼Ó»áÔ±¼Ç¼£¡")
Unload Me
End If
.Close
End With
End Sub
能不能形象化说明一下,书面上的文字太难理解了.