技术频道

Microsoft Office Access 2003的ODBC数据源配置

1. 创建数据源

  单击[脚本]-[应用]菜单,出现[图1-1]所示“应用程序脚本”窗口,在“进入程序”选项卡中使用函数SQL Connect(ConnectID ,SourceDesc)可实现实时数据库与关系型数据库Access 2003的连接。

  SQLConnect (Int ConnectID, String SourceDesc) As Bool

  说明:

  与指定的数据库建立连接。如果指定的远程数据库不存在,该函数可能要等待几十秒。

  参数:

  ConnectID: 数据源标识,为返回值,该值将用于其它后续SQL函数。

  SourceDesc: 数据源描述。数据源描述可以通过脚本中工具条按钮“SQL连接“按钮得到。

  返回值:

  0为失败,1为成功。

  示例:

  SQLConnect(ConnectID,"DSN=Access;DBQ=D:\table1.mdb;DefaultDir=D:;DriverId=25;FIL=MS   Access;MaxBufferSize=2048;PageTimeout=5;UID=admin;");

  //与Access数据库文件table1.mdb建立连接

  注意:

  参数必须为变量,返回函数执行后的数据。数据源使用完后,使用SQLDisconnect来断开连接。

  在此对SourceDesc数据源的连接过程以新建连接的应用为例做详细说明:

图1-1

  在“应用程序脚本”窗口的工具栏中单击“数据源选择”图标,弹出如 <图1-2>所示的“选择数据源”窗口,该窗口提供“文件数据源”和“机器数据源”两个选项卡,前者为文件数据源,仅针对指定的数据库文件创建数据源,如果有多个Access数据库文件需要连接,就需要创建相应数量的文件数据源;后一种为机器数据源,它可以在使用的计算机上创建一个面向所有Access数据库的数据源。

  在本文仅介绍“机器数据源”的创建连接过程。在这里需要说明的是,如果使用的计算机已经建立了若干数据源,[图 1-2]会列出已存在的数据源列表。

  先选中“机器数据源”选项卡,然后单击按钮,出现[图1-3]所示的“创建新数据源”窗口,在“选择数据源类型”选项中选择“系统数据源(只用于当前机器)(S)”来创建一个新数据源。

图1-3

  单击[图1-3]按钮,弹出[图1-4]所示“创建新数据源”窗口,在提供的数据源驱动程序列表中选择驱动“Microsoft Access Driver (*.mdb)”,然后单击按钮,弹出[图4-45]所示的窗口。

图1-4

图1-5

  在[图1-5]所示的窗口,单击按钮,弹出[图1-6]所示“ODBC Microsoft Access 安装”窗口,其中“数据源名”和“说明”可以根据需要自定义。

  注意:“数据源名”为必选项,输入的数据源名可以使用英文、数字及两者的混合模式,但不支持中文数据源名,该数据源名在典型的SQL字符串连接中为DNS数据源的名称。“说明”是对数据源名的描述,非必选项,可以为空。

图1-6

  本例中,在[图1-6]“数据源名(N):”中输入“Access”,在“说明(D):”中输入“All USER”,如[图4-47]所示。如果在此创建新数据库,创建过程参见下节的“创建数据库”。

图1-7

  单击按钮后,名为“Access”的新数据源就建好了,如[图1-8],使用该数据源名可以连接本机任何Access的数据库了。

图1-8

  创建数据源也可以在WINDOWS XP系统的[控制面板]-[管理工具]-[数据源(ODBC)]完成。其创建过程如下:

  进入[控制面板]-[管理工具],双击打开“数据源(ODBC)”快捷方式,弹出如[图1-9]所示“ODBC 数据源管理器”窗口,在该窗口页选择“系统DSN”选项卡,然后单击按钮随后弹出如[图1-10]所示窗口。

图1-9

图1-10

  在[图4-50]窗口单击按钮,弹出[图4-51]所示“ODBC Microsoft Access 安装”窗口,其中“数据源名”和“说明”可以根据需要自定义。

  注意:“数据源名”为必选项,输入的数据源名可以使用英文、数字及两者的混合模式,但不支持中文数据源名,该数据源名在典型的SQL字符串连接中为DNS数据源的名称。“说明”是对数据源名的描述,非必选项,可以为空。

  本例中,在[图1-11]“数据源名(N):”中输入“Access”,“说明(D):”中输入“All USER”,然后单击 按钮,名称为Access的新数据源就创建成功了,如[图1-12]所示。

图1-11

图1-12

2. 创建数据库

  在前面已经建立了基于Access数据库驱动的ODBC数据源,这里创建与之对应的被连接对象数据库。

  创建数据库可以采用两种方式。

  其一、使用“Microsoft Access 2003” 创建一个新数据库,例如:数据库名称为“table1”,文件保存路径为“D:盘”根目录,数据表可自定义多个;

  其二、在创建数据源一节,见[图1-7]或[图1-11],在输入数据源名称后,先不要急于使用按钮创建数据源,请在使用按钮之前,先使用按钮创建新数据库,创建过程如下:

  在[图1-7]中,单击按钮,弹出类似于[图4-53]的“新建数据库”窗口,在窗口“目录”栏中选择“D:\”,在“数据库名(A)”中,输入数据库名称为“table1.mdb”,注意:“格式(F)”使用默认的“版本 4.x”,这是Microsoft Jet 数据库引擎的格式。4.x 版为最新版,格式为 Unicode。

图1-13

  完成设置后,单击按钮,系统提示如[图1-14]所示的数据库创建成功窗口。再次点击按钮即可完成数据库的创建。

图1-14

3. 连接数据源

  在[图1-1]所示的“进入程序”窗口,输入函数SQLConnect ( ConnectID ," ");将鼠标的光标置于上述函数的双引号(英文输入法的双引号)中间,在“脚本编辑器”窗口的工具栏中单击“数据源选择”图标添加数据源,在弹出的[图 1-8]窗口中双击数据源名“Access”,出现[图1-15]的登陆窗口。

图1-15

  在窗口中“授权”使用默认为空,任何使用该计算机的用户都可以登陆该数据库,也可以输入自定义的口令,然后单击按钮(或直接单击按钮),会弹出[图1-16]“选择数据库”的窗口。

图1-16

  在这里选择我们要连接的数据库“D:\”根目录下的“table1.mdb”数据库,点击按钮回到[图1-15]窗口后,最后单击按钮(或直接返回)在光标所在位置返回完整的数据源。返回结果如下:

  SQLConnect(ConnectID,"DSN=Access;DBQ=D:\table1.mdb;DefaultDir=D:;DriverId=25;FIL=MSAccess;MaxBufferSize=2048;PageTimeout=5;UID=admin;");如图[1-17]所示

图1-17

  如果连接成功ConnectID 返回整型数据1,连接失败返回整型数据0。在该语句之后也可以使用函数SQLGetLastError(String& ErrorDesc); 来检查连接的执行结果,软件运行后,ErrorDesc返回字符型提示“执行成功”,如果失败会提示不同的失败原因。

  使用其它SQL函数可以直接创建和操作上述连接数据库的数据表。

附件

  SQL(结构化查询语言)是关系数据库使用的标准语言,用来检索、更新和管理数据。开放式数据库互连(ODBC)是各种关系数据广泛使用的接口标准,支持该标准的关系数据库被称为ODBC数据库。

  紫金桥SQL访问功能是为了实现紫金桥和其他ODBC数据库之间的数据传输。它主要由数据表管理(SQL数据表模板和数据表绑定)和SQL函数两部分组成。

  数据表管理用来建立数据库字段和紫金桥变量之间的联系。通过SQL数据表模板在数据库中创建表格,通过数据表绑定实现对记录的操作。

文章版权归西部工控xbgk所有,未经许可不得转载。