做本地数据库我不推荐用那个data控件。
你可以用dao(database activex object) 或是 ADO(activex data object)来做
用Dao的例子如下。
先引用"microsoft dao 3.6 library"
Dim db As Database
Dim rs As Recordset
Private Sub Form_Load()
Set db = OpenDatabase(数据库名)
Set rs = db.OpenRecordset(表名)
End Sub
添加数据只要在任何事件中加入以下代码即可
With rs
.AddNew
!字段1名 = txtname.Text
!字段2名 = txtage.Text
.Update
End With
引用Ado的例子
先引用"microsoft activex data object library"
Dim conn As ADODB.Connection
Private Sub Form_Load()
Set conn = New ADODB.Connection
conn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=数据库名(包括路径)"
conn.Open
End Sub
添加数据只要在任何事件中加入以下代码即可
Dim sql As String
sql = "insert into 表名(字段1名,字段2名) values (值1,值2)"
conn.Execute (sql)
代码实现:
(在添加代码前需要在“工程->引用”中引用Microsoft ActiveX Data Object 2.1 Library”(或更高版本)及Microsoft ActiveX Data Object Recordset 2.1 Library”(或更高版本。不引用Recordset,在有安装有VB的系统上,程序可以正常运行,但在没有VB的环境中,程序运行时会提示“ADO找不到提供者”,所以建议在所有使用ADO连接的工程中引用该库)
使用ADODC控件:
dim Cnn as ADODB.connection
dim Rs as New ADODB.Recordset
dim strFileNamePath as String
set Cnn=New ADODB.connection
strFileNamePath="........" '此处为你的mdb文件的路径和文件名
Cnn.connectionStrint="provider=microsoft.jet.oledb.3.51;data source=" & strFileNamePath
cnn.open
Rs.CursorLocation=adUseClient
rs.open "select * from YourTable",cnn,adOpenDynamic,adLockOptimistic '此处使用SQL语句。如果想深入操作数据库,SQL的知识是必需的。
Adodc1.DataSource=RS
set DBGrid.Datasource=adodc1
dbgrid.refresh
set text1.datasource=adodc1 'Text绑定的代码可能不正确,因为我没这样用过
set text1.datafiled=你要使用的字段名 '你可以自己试一下,差不多的
text1.refresh
不使用Adodc控件:
dim Cnn as ADODB.connection
dim Rs as New ADODB.Recordset
dim strFileNamePath as String
set Cnn=New ADODB.connection
strFileNamePath="........" '此处为你的mdb文件的路径和文件名
Cnn.connectionStrint="provider=microsoft.jet.oledb.3.51;data source=" & strFileNamePath
cnn.open
Rs.CursorLocation=adUseClient
rs.open "select * from YourTable",cnn,adOpenDynamic,adLockOptimistic '此处使用SQL语句。如果想深入操作数据库,SQL的知识是必需的。
DBGrid.Datasource=RS
dbgrid.refresh
text1.text=RS!YourFiled 'YourFiled为你要使用的字段名