服务热线:
您当前的位置:首页 > 技术服务 > 常见问题

(十七)ODBC功能

2015/8/11 9:55:04

1、什么是ODBC

开放数据库互连(Open Database Connectivity,ODBC)是微软公司开放服务结构(WOSA,Windows Open Services Architecture)中有关数据库的一个组成部分,它建立了一组规范,并提供了一组对数据库访问的标准API(应用程序编程接口)。

天星组态软件支持ODBC功能,即:标准数据库访问(SQL)功能,是实现系统与标准数据库之间数据交换,包括:SQL 管理、SQL 函数、执行标准 SQL 语句的函数、报警数据和历史数据直接记录到标准数据库、数据库表格控件。

2SQL管理是什么?

SQL 管理用来建立标准数据库和系统中变量之间的联系,SQL管理包括:

(1) 表格模板管理:表格模板用于定义在标准数据库中创建表格的字段,用户创建表格模板,然后以这种模板在数据库中添加表格,表格模板信息存储在SQL.DEF文件中。

(2) 记录列表管理:记录列表用来连接表格的列和变量数据库中的变量,即将数据库表中的字段与天星的变量[或变量.域]绑定,记录列表信息存储在 BNID.DEF 文件中。

3SQL函数怎么使用?

系统的ODBC功能是通过SQL函数实现的,通过SQL函数实现:创建数据源、打开数据库、写数据库记录、修改数据库记录、删除数据库记录、查询数据库、关闭数据库等功能。

4、能自动创建数据源吗?

通过SQL函数:SQLAutoConfigDSN() 实现。创建数据源函数只需要执行一次就可以了,因为,一般放置到“应用程序命令语言(启动时)”中。

示例:创建Access数据源:“数据源1, 数据库文件位于工程目录下:Database.mdb,则创建数据源函数如下:

Result=SQLAutoConfigDSN( "Microsoft Access Driver (*.mdb)", "数据源1", "", "", InfoAppDir( )+"Database.mdb", 1 );

其中:函数InfoAppDir( ) 用于获取用户工程项目的路径。

5、数据库字段为"反应罐#温度", 无法通过ODBC往数据库中写数据?

标准数据库中有很多关键词和符号,这些关键词和符号是不能用作字段名称的。

6、天星ODBC功能支持存储过程吗?

标准数据库中存储过程是通过SQL函数实现的,天星的SQL函数支持存储过程。在“在线帮助”的“标准数据库访问(SQL功能)”中“SQL执行存储过程”有详细的示例。

7、实数类型存入数据库后为什么在天星组态中无法读取?

原因是因为客户在数据库中定义的字段的类型不对。在天星组态中定义的内存实型变量,在ACCESS数据库中对应的字段的类型应该是单精度型,在SQL SERVER数据库中对应的字段的类型应该是real.(不能为float)

8、天星组态与MIS系统如何进行数据交换?

通过标准数据库实现数据交换:

(1) 天星组态软件通过SQL函数实现与标准数据库进行数据交换。

(2) MIS系统与标准数据库进行数据交换。

9、数据库插入记录失败?

(1) 在信息窗中查看数据库是否连接;

(2) 数据库表格的字段名与天星组态记录体定义的字段名是否相同;

(3) 数据库表格的字段类型与天星组态变量的类型是否符合,推荐使用天星组态的表格模板创建表格;

(4) 表格中使用的字段名是否为datatime,这些是数据库的关键字,需要更改为其他字段名。

10、为什么连接句柄会显示1000

SQL函数:SQLConnect()正确执行后会返回连接句柄,这是一个很大的整数,如果返回1000,则说明在创建连接句柄变量时,最大值设置为1000了,当返回值大于1000时,被系统强制到最大值。

解决这个问题很简单,只需要将连接句柄的最大值设置成一个很大的数就可以了。如果连接句柄显示的值等于变量字典中连接句柄的最大值,则说明连接句柄的最大值不够大。

 

 


企业邮箱  |  法律公告  |  隐私保护  |  联系我们  |