大家好,我是雷工!
本篇通过实例,介绍KingSCADA3.7访问SQL Server2022数据库。

一、概述

1、创建数据库及数据表格;
2、配置ODBC数据源。
3、通过KingSCADA与数据库建立连接,将数据写入数据库对应表格。

二、创建数据库

1、安装数据库
还没有安装数据库或准备安装数据库的小伙伴可以参考:
《【数据库】SQL Server2022安装教程》

2、打开SQL Server Management Studio ,在连接界面输入数据库所在的服务器IP或服务器名称。
身份验证可以选择“Windows身份验证”或“SQL Server身份验证”,此样例选择的是“服务器名称”即本计算机的设备名称,可在系统信息处查看你计算机的名称。登录名“sa”,密码输入你安装时设置的登录密码。

3、创建数据库
3.1、连接上服务器后,选中“数据库”,右击,选择“新建数据库”选项。

3.2、在“数据库名称”处输入“SCADASQL”,点击“确定”按钮,就创建了一个名为“SCADASQL”的数据库。

3.3、在“SCADASQL”下“表”上右击选择“新建”->“表”创建一个名为“WXD”的数据表。
表结构可以参考《【数据库】SQLServer报修表,维修表,反馈表三表连查》设置。

三、配置ODBC数据源

1、通过“控制面板”->“所有控制面板项”->“Windows工具”打开ODBC数据源管理器。

2、选择“系统DSN”,点击“添加”按钮。

3、选择数据源驱动程序“SQL Server”,点击“完成”按钮。

4、为数据源命名“kssql1”,在服务器处输入IP地址或设备名称。
注意:IP处可以输入需要的IP地址,本机可复制输入本机设备名,如果点击下拉按钮会卡死,未响应,等待时间较长。

5、选择“使用用户输入登录ID和密码的SQL Server验证”,输入登入ID:sa ;密码输入你设置的密码;点击“下一步”。

6、可改默认数据库为你需要连接的数据库,此处改为“SCADASQL”,然后点击“下一步”。

7、不做修改,直接点击“完成”按钮。

8、弹出如下窗口,可点击“测试数据源”按钮。测试是否可以连上SQLServer数据库。

9、稍等片刻,弹出链接数据测试结果,显示“测试成功”,点击“确定”按钮,完成数据源创建。

10、在ODBC数据源管理程序窗口显示新建数据源“kssql1”,点击“确定”,关闭当前窗口。

四、KingSCADA连接SQL Server并插入数据

1、新建工程

2、创建一个画面

(新建工程和新建画面步骤可参考SCADA手册,此处采用现成的项目演示此功能。)

3、编辑按钮脚本

脚本实现功能为先获取界面输入框的内容是否输入完整,然后获取界面输入的信息,编辑SQL插入语句,链接数据库将数据插入对应的数据库表格。

按钮脚本代码如下:

int a=ShowMessageBox("请检查录入信息是否正确,确认录入请点击确定", "提示", 1,4);
if(a==1)
{//获取输入框信息string wxdh=wxdh.Text;//获取单号string wxbxtime=wxbxtime.Text;//获取报修时间  string wxsbname=wxsbname.Text;//获取设备名称string wxzby=wxzby.Text;//获取值班员string wxbzz=wxbzz.Text;//获取班组长string wxbxr=wxbxr.Text;//获取报修人string wxwtms=wxwtms.Text;//获取问题描述string wxjbtime=wxjbtime.Text;//获取接报时间string wxjbr=wxjbr.Text;//获取接报人string wxxfr=wxxfr.Text;//获取修复人string wxxftime=wxxftime.Text;//获取修复时间string wxysr=wxysr.Text;//获取验收人string wxwxr=wxwxr.Text;//获取维修人string wxgzfx=wxgzfx.Text;//获取故障分析if(wxdh==""||wxbxtime==""||wxsbname==""||wxzby==""||wxbzz==""||wxbxr==""||wxwtms==""||wxjbtime==""||wxgzfx==""||wxxfr==""||wxxftime==""||wxysr==""||wxwxr==""||wxgzfx==""){ShowMessageBox("信息录入不完整,请填写后再录入!", "提示", 0,4);return;}
string sql="insert into WXD Values('"+wxdh+"','"+wxbxtime+"','"+wxsbname+"','"+wxzby+"','"+wxbzz+"','"+wxbxr+"','"+wxwtms+"','"+wxjbtime+"','"+wxjbr+"','"+wxxfr+"','"+wxxftime+"','"+wxysr+"','"+wxwxr+"','"+wxgzfx+"')";bool res,res1;
res=/*bool*/ KDBExecuteStatement("DSN=kssql1;DATABASE=SCADASQL;UID=sa;PWD=admin@123;",sql);if(res==0){KDBDisConnect( "bx");KDBGetConnectID( "bx", "DSN=kssql1;DATABASE=SCADASQL;UID=sa;PWD=admin@123;");res1=KDBExecuteStatement("DSN=kssql1;DATABASE=SCADASQL;UID=sa;PWD=admin@123;",sql);if(res1==0){ShowMessageBox("录入数据失败,请确认设备信息是否已录或网络不通!", "提示", 0,1);return;}}ShowMessageBox("录入数据成功", "提示", 0,0);
}

4、运行项目

4.1、操作步骤

在输入界面输入要插入的信息,点击“入录”按钮。

4.2、效果演示

填写信息并录入演示

SQL数据查询演示

后记

以上为KingSCADA连接SQLServer并插入数据的详细过程,通过与数据库的连接存储,将采集的信息和数据存入SQL数据库,可以更轻松的实现与现有或规划中的MES和ERP系统相集成,从而使数据能够通过整个组织无缝流动。

【SCADA】KingSCADA将数据插入SQLServer的方法相关推荐

  1. SQLServer 批量插入数据的两种方法

    SQLServer 批量插入数据的两种方法- 发布:dxy 字体:[增加 减小] 类型:转载 在SQL Server 中插入一条数据使用Insert语句,但是如果想要批量插入一堆数据的话,循环使用In ...

  2. python操作sqlserver如何判断删除的数据不存在_Python MongoDB 插入数据时已存在则不执行,不存在则插入的解决方法...

    本文实例讲述了Python MongoDB 插入数据时已存在则不执行,不存在则插入的解决方法.分享给大家供大家参考,具体如下: 前言: 想把QQ日志爬虫(Python)爬下来的日志保存到 MongoD ...

  3. sql 批量插入数据到Sqlserver中 效率较高的方法

    使用SqlBulk #region 方式二 static void InsertTwo() { Console.WriteLine("使用Bulk插入的实现方式"); Stopwa ...

  4. mongodb 导出到sqlserver_迁移sqlserver数据到MongoDb的方法

    迁移sqlserver数据到MongoDb的方法 前言 随着数据量的日积月累,数据库总有一天会不堪重负的,除了通过添加索引.分库分表,其实还可以考虑一下换个数据库.我强烈推荐使用MongoDb,我举例 ...

  5. mysql如何防止插入重复数据_防止MySQL重复插入数据的三种方法

    新建表格 CREATE TABLE `person` ( `id` int NOT NULL COMMENT '主键', `name` varchar(64) CHARACTER SET utf8 C ...

  6. php 插入 mysql_php插入mysql数据返回id的方法

    如下所示: $dbh = mysql_connect('localhost','root','root'); mysql_select_db('pkbk'); $query = "inser ...

  7. SQL Server 批量插入数据的两种方法(转)

    原文:http://blog.csdn.net/tjvictor/article/details/4360030 在SQL Server 中插入一条数据使用Insert语句,但是如果想要批量插入一堆数 ...

  8. mysql 禁止插入重复数据_防止MySQL重复插入数据的三种方法

    新建表格 CREATE TABLE `person` ( `id` int NOT NULL COMMENT '主键', `name` varchar(64) CHARACTER SET utf8 C ...

  9. 【转载】SQL Server 批量插入数据的两种方法

    在SQL Server 中插入一条数据使用Insert语句,但是如果想要批量插入一堆数据的话,循环使用Insert不仅效率低,而且会导致SQL一系统性能问题.下面介绍SQL Server支持的两种批量 ...

最新文章

  1. 3-flutter 项目结构 资源 依赖
  2. Inchat时代真的来了?上线一周突破百万用户
  3. 第四范式荣获2020年度信创工委会 “卓越贡献成员单位”称号
  4. 持续集成实验个人总结
  5. Spring MVC —— 前后台传递JSON
  6. 经典永流传,华为云媒体 AI 让老电影焕发新生
  7. VS2013 安装配置 C++ boost 库
  8. 四.单纯形法(两阶段和大M法)
  9. 开关型直流电源比线性直流电源效率高的原因?
  10. vscode离线安装vsix插件命令
  11. lora网关以太网传输
  12. 国产操作系统盘点(2)——统信UOS & 深度Deepin
  13. 蓝牙sbc怎么解决_蓝牙耳机不会挑?蓝牙编解码器了解一下
  14. java qq验证_用Java代码来校验QQ号
  15. 5.3 定积分的换元积分法和分部积分法
  16. 阿里的天蝎计划-迟到了N多年的 SI
  17. java实现基金浮动_基于JAVA的重仓股基金接口调用代码实例
  18. 【Java每日一题,Map和字符串】Ananagrams
  19. 配置超过64K方法的应用程序
  20. typescript项目中引入汉字转拼音js

热门文章

  1. Firefox,Google浏览器插件配置
  2. 服务器 如何修改盘符,服务器盘符怎么改
  3. 考研英语近义词与反义词·十
  4. GIT学习笔记(5):变基
  5. Java面试技巧——每天一个Tip
  6. 神州数码副总裁张赐安辞职
  7. TCP-IP详解: RTT和RTO的计算方法
  8. JUC之七:ReentrantReadWriteLock源码解读JDK8
  9. 怎样把ppt转成pdf
  10. linux查看板卡gga信息,INCAR中的GGA及VOSKOWN tag的设置