全球FlexSim系统仿真中文论坛

标题: 示例:通过命令创建ODBC连接 [打印本页]

作者: zorsite    时间: 2015-10-25 02:03
标题: 示例:通过命令创建ODBC连接
本帖最后由 zorsite 于 2015-10-25 08:29 编辑
" n2 Z, F" X) z. l, S- q. z3 p; U) }; G0 @
环境:windows 7 32位,office 2007 32位' N2 e0 H5 N+ K5 A3 z2 [  E1 O
数据库文件用access 2007创建6 u+ b- ~* s0 k0 n# W
数据库文件名:flexsimdata.accdb
" X) E& \9 Q& ?% A数据库文件放在C:\Users\Administrator\Documents目录下9 _6 Z' h) T7 }  Y
+ k3 z; o: F" c
方法1:1 F' F' ?  N! e* G$ v3 ?
点击开始-->运行8 F* Q$ R9 F, t2 M9 j
在运行对话框输入以下命令:
  1. odbcconf configdsn "Microsoft Access Driver (*.mdb, *.accdb)" "dsn=testdata|DBQ=C:\Users\Administrator\Documents\flexsimdata.accdb"
复制代码
按回车后如果没有任何提示表示ODBC已经创建成功。注意:此行代码创建的是用户DSN,而非系统DSN。
4 C8 B6 S8 l9 j$ H7 e0 I. g1 z/ I[attach]2847[/attach]
% n: m! B8 ^8 n) l) {8 y' _如果想要创建系统DSN,可以使用以下命令:
  1. odbcconf configsysdsn "Microsoft Access Driver (*.mdb, *.accdb)" "dsn=testdata|DBQ=C:\Users\Administrator\Documents\flexsimdata.accdb"
复制代码
[attach]2848[/attach]
3 Y( S' a: u( z: D- f3 v  \3 v0 Q* V
testdata可以根据需要更换为其他名字,只要方便自己记忆和编写代码。" m! m* b6 j  W" U# L( {
接下来可以在flexsim中使用dbopen命令来连接数据库了。
8 T( Q% L6 }- a- o% g% Z( Z假设flexsimdata.accdb中有一张名为detail的表格,则可以使用
  1. dbopen("testdata","detail",1);
复制代码
创建与datail表格的连接。- R# W+ I( @1 S7 P/ b- Q9 U
方法2:
* O; b/ [6 I( i  k" ^* E" l  一般情况下,当用户在控制面板中配置好ODBC数据源后,Windows系统便在注册表中加入了一些子键来存储用户的配置结果。当应用程序需要用到数据源时,Windows便会通知底层接口查阅注册表中该数据源的配置。如果用户删除了某个ODBC数据源,那么也会在注册表中有所反应。
) `7 ]) s* M9 a; r9 T- \  如果配置的数据源是用户数据源,Windows系统便会修改注册表的[HKEY_CURRENT_USER\Software\ODBC\ODBC.INI]子键;如果配置的数据源是系统数据源,Windows系统便会修改注册表的[HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBC.INI]子键。
1 a' S: I1 e- w- q& B  对于不同类型的数据源,注册表的修改也各有不同,但基本上都要修改两个地方。一个是在[HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBC.INI]子键下建立一个与数据源描述名同名的子键,并在该子键下建立与数据源配置相关的项;另一个是在[HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBC.INI\ODBC Data Sources]子键下建立一个新项以便告诉驱动程序管理器ODBC数据源的类型。( q1 P0 v1 l/ }
! N! {+ G; X9 R- s; T

+ f6 @; F7 B  Y0 d+ o复制以下代码粘贴到记事本:
  1. Windows Registry Editor Version 5.00
    7 s% ?; t' W2 @" u$ P

  2. & P( P- G: b1 N( k  I
  3. [HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBC.INI\data]
    9 G. j5 [6 R, j& M' f3 N
  4. "DBQ"="C:\\Users\\Administrator\\Documents\\flexsimdata.accdb"
    1 C9 s* M5 n& m- f0 Y
  5. 9 Y5 x$ z4 i& |
  6. [HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBC.INI\ODBC Data Sources]* T5 u* N% x5 g6 h' R( f
  7. "data"="Microsoft Access Driver (*.mdb, *.accdb)"3 p1 |1 R5 @' ]! Z1 m, k8 |
复制代码
将文件另存为import.reg,然后双击该文件导入注册表,可以创建名为data的系统DNS。
6 P! P1 J" e. x: t[attach]2846[/attach]
作者: 慧娴亚伦    时间: 2015-10-25 09:50
学习一下!
作者: 大摸鱼    时间: 2015-10-25 10:23
感谢加老师分享,这种用命令创建数据库链接的方法我也是第一次看到,收藏啦
作者: cy411522    时间: 2015-10-26 10:31
好吊!!




欢迎光临 全球FlexSim系统仿真中文论坛 (http://www.flexsimasia.com/) Powered by Discuz! X3.3