我的问题是:
我在做数据库程序时,每一个form加一个ado和datagrid控件。用于连接数据库和显示数据。那怕是两个form用的数据完全一样,我也分别在两个form中分别都加一个ado和datagrid控件。
虽然我这样做编起程序来很简单。但是我老是觉得这么做不是很科学。
请问我这么做有没有什么不妥,你们做数据库程序是怎么做的?
如果是两个或多个form共用一个数据库,有没有科学一点的办法?
你们做数据库是怎么做的啊?如果可以的话,请给一个简单实例来说明两个或多个form共用一个数据源,谢谢了。
请多多指教。
我在做数据库程序时,每一个form加一个ado和datagrid控件。用于连接数据库和显示数据。那怕是两个form用的数据完全一样,我也分别在两个form中分别都加一个ado和datagrid控件。
虽然我这样做编起程序来很简单。但是我老是觉得这么做不是很科学。
请问我这么做有没有什么不妥,你们做数据库程序是怎么做的?
如果是两个或多个form共用一个数据库,有没有科学一点的办法?
你们做数据库是怎么做的啊?如果可以的话,请给一个简单实例来说明两个或多个form共用一个数据源,谢谢了。
请多多指教。
一个工程里,一般一次连接就行了。dim cn as adodb.connection
set cn=new adodb.connection
cn.connectionstring=...
cn.open...
dim rs as adodb.recordset
set rs=new adodb.recordset
set rs.activeconnection=cn
rs.open "SQL语句"...
dim rs1 ...
rs1.open "SQL语句",cn
用的时候可以frmCom.adodc就可以了
也可以用vb自带的数据环境
局部的ado.recordset就可以了
在模块里加入:
Option Explicit
Public mCnnString As StringmCnnString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\db1.mdb" & ";Persist Security Info=False"
在窗体里引用:
Dim mCnn As New ADODB.Connection
Dim mRst As New ADODB.RecordsetmRst.CursorLocation = adUseClientmCnn.ConnectionString = mCnnString
mCnn.Open
mCnn.Execute("Select * From Table")mRst.Open "Select * From Table", mCnnString, adOpenStatic, adLockOptimistic, adCmdText