| 编程语言中,VB和Delphi是现今非常流行的,深受编程人员的喜爱。但在很多时间需要考虑数据共用的问题, 从Delphi 4版本开始, Paradox数据库从Paradox 5升级为Paradox 7,而在VB6中只能支持Paradox 5及其以下版本数据库,那么如何利用VB6读取Paradox 7数据库呢?我们做以下实验: |
| 建立一Paradox 7数据库kmzd.db,字段如下: |
| 进入VB6,建立一应用程序,打开程序窗口,添加Data控件Data1,设置Data1属性: |
| 添加DBGrid 控件DBGrid1,设置DBGrid1属性: |
| 采用程序代码方法去实现仍然不能读取,那么应如何去读取Paradox 7 数据库呢,多方求问没有结果,于是本人埋头实验,终于发现了解决的办法,为了不使别人再讨苦吃,我将方法告诉大家,以供参考。 |
| 首先,打开控制面板,设置ODBC数据源,其Name为:Paradox7,选取数据库版本为Paradox5.x,并设置其它属性。然后进入VB,编写程序实现如何读取Paradox 7数据库。 |
| 以下介绍两种VB6读取Paradox 7数据库的方法。 |
| Dim WithEvents adoRS As Recordset |
| db.CursorLocation = adUseClient |
| db.Open "PROVIDER=MSDASQL;dsn=paradox7;uid=;pwd=;" |
| Set adoRS = New Recordset |
| adoRS.Open "select * from kmzd", db, adOpenStatic, adLockOptimistic |
| 二、利用ODBC API读取Paradox 7数据库 |
| Global Const SQL_SUCCESS As Long = 0 |
| Global Const SQL_DROP As Long = 1 |
| Declare Function SQLAllocEnv Lib _ |
| "odbc32.dll" (phenv&) As Integer |
| Declare Function SQLAllocConnect Lib _ |
| "odbc32.dll" (ByVal henv&,phdbc&) As Integer |
| Declare Function SQLFreeEnv Lib |
| "odbc32.dll" (ByVal henv&) As Integer |
| Declare Function SQLConnect Lib _ |
| "odbc32.dll" (ByVal hdbc&, ByVal szDSN$,_ |
| ByVal cbDSN%, ByVal szUID$, ByVal cbUID%,_ |