使用kingSCADA3.53连接mysql数据库
第一次使用kingSCADA3.53,需要连接到mysql数据库,记录一下具体过程。
kingSCADA使用OLE DB连接数据库,我们使用mysql的myODBC作为连接接口。
下载安装myODBC
在已有mysql数据库后,我们需要安装myODBC数据库驱动:
myODBC官网下载地址
需要注意的是这里选择下载64位还是32位,并不取决于你的操作系统位数,而取决于你的应用程序调用的是32位的ODBC接口还是64位的ODBC接口,也可以两个都下载安装。
可能出现的问题:
安装过程报错:This application requires Visual Studio 2015 x64 Redistributable
解决:安装mysql 8.0系列必须先安装Visual C++ Redistributable for Visual Studio 2015,注意Visual C++ Redistributable是用Visual C++编写的软件支持库,不同版本之间不兼容(包括子版本),若已安装更高版本,需要先卸载才能安装成功
Visual Studio 2015 x64 Redistributable点此下载
配置myODBC数据源
打开控制面板查看方式选择小图标
选择管理工具
选择ODBC数据源配置工具
选择添加
这里我们选择MySQL ODBC 8.0 Unicode Driver,它支持更多的字符集
新建一个数据源名称为myDSN,配置服务器为本机localhost,配置对应的mysql连接用户名密码,选择数据库,点击ok创建成功。
可能出现的问题:
找不到对应的myODBC驱动,原因在于下载的版本与配置的管理工具位数不一致。
创建OLE DB连接字符串
新建一个文本文档,将其后缀改为udl。
右键打开方式选择OLE DB Core Services
选择Microsoft OLE DB Provider for ODBC Drivers
输入配置好的数据源名称,选择相应数据库,点击确定。
使用记事本打开文档,记录连接字符串。
kingSCADA连接数据库
在KingSCADA中新建一副画面,取名“DataQuery”;
在画面中添加一个报表图素(名称“Report1”),一个按钮(名称“Button”);
在按钮的“左键按下”中添加脚本如下:
String ConnectStr,SqlStr;//定义两个字符串变量
String ConnectStr= “Provider=MSDASQL.1;Persist Security Info=False;Data Source=myDSN;Initial Catalog=tft-dvr”;//前面的连接字符串;
String SqlStr="select*from hisdatafileinform";//SQL语句,从表“hisdatafileinform”中选择数据
KDBGetDataset("Dataset1", ConnectStr,SqlStr);// 此函数用于获得一个符合条件的数据集"Dataset1",该方法从数据库查询一次之后就断开与数据库连接,适合不频繁与数据库连接的操作,如果需要频繁的访问数据库,该函数不合适,会导致数据库连接断开
Report1.SetDataset1("Dataset1");//清除掉报表图素中原有的数据,将符合条件的数据集"Dataset1"显示在Report1报表图素中,默认显示的起始单元格是报表图素中第一行第一列对应的单元
点击按钮,连接成功。