① 组态软件北京三维力控怎样直接读取ifix数据库的监控数据
一般情况下组态软件直接通讯有三种方案
一是通过opc的方式 这个最简单。但是配置服务器还是需要费一些功夫的
二是通过中间软件 例如关系数据库。如果ifix的opc不给开放 就可以先把数据存入关系数据库 例如sql access 然后力控再从关系数据库取。这种办法是最便宜最省钱的
三是走底层接口 ifix也可以开放底层数据库接口 但是开发底层接口的费用很高 而且技术服务支持不动 所以采用的很少
② 力控组态软件同步实时数据到关系型数据库(sqlserver 2008)
字段Time和TagName是建表是的自动字段,不用设置,可以根据不同需要自己增加数据转储的字段,可以自己修改字段名。
按钮AuTo是自动添加所有变量的字段名,如果是本地数据源就字段名等于变量名,如果是远程数据源字段名自动等于”远程数据源名\\变量名”。
此时点击完成,和SQLserver2000之间的一个数据转储任务就设置完成。
③ 力控sqlinsert失败
力控sqlinsert失败在要插入语句前set names utf8
失败的原因:1.表中存在外键,关联到另一个表,插入不存在于另一表主键的值的时候会报错
2.value后面括号的字段数目、类型和value前面的字段数目或者类型不匹配
1、添加ADO 后台组件,建立数据表绑定
2、打开数据库
3、按照建立的绑定向库中插入数据
④ 怎么通过力控软件删除sql数据库中的单个内容 函数脚本怎么编写
1、必须先安装Microsoft Office Access 2003,和SQL Server数据库。
2、用Access 2003打开动数据库,打开后按工具栏——数据库实用工具——转换数据库——转换为2002-2003格式,把数据库转换成2003格式。
3、转换完成后再用Access 2003打开,打开后按工具栏——数据库实用工具——升迁向导——新建数据库——填写SQL数据库登陆名称、密码和要新建的数据库(准备转成新的数据库),按下一步,按“ 》”键,再按下一步,选取所有选项,再按下一步,选择“不对应用程序作任何改动”,再按完成。
4、打开SQL企业管理器——数据库---选中相应的数据库---右键所有任务-----生成SQL脚本——常规——全部显示——编写全部对象脚本——确定(记住存放的位置)。
5、用记事本打开刚才生成的SQL脚本,在编辑栏——替换——查找内容为“smalldatetime”替换为“datetime”——替换全部;完成后再在编辑栏——替换——查找内容为“nvarchar”替换为“varcha”——替换全部,完成后保存退出。
6、打开SQL企业管理器——数据库——点击新建的数据库,然后在工具栏——SQL查询分析器——文件——打开——“刚才生成的SQL脚本”——查询——执行,然后关闭窗口。
7、再回到SQL企业管理器——数据库——点击新建的数据库,然后打开工具栏——数据库转换服务——导入数据——下一步——数据源“Microsoft Access”文件名“为旧的acc数据库”——下一步——再下一步——从源数据复制表和视图——下一步——全选——下一步——立即运行——下一步——完成。
8、最后补充:
(1)由于SQL2000里面没有"自动编号",所以你的以"自动编号"设置的字段都会变成非空的字段,这就必须手工修改这些字段,并把他的"标示"选择"是",种子为"1",增量为"1",
(2)另外,ACCESS2000转换成SQL2000后,原来属性为"是/否"的字段将被转换成非空的"bit",这时候你必须修改成自己想要的属性了;
(3)另外,大家要注意对时间函数的把握.ACCESS与SQL是有很多不同的.
根据以上3点,再回到SQL企业管理器——数据库——点击这个数据库下新建的数据库,将所有表的字段属性根据以上3点进行修改
补充说明:
自动增加字段需要重写。在access中经常使用的自动编号字段,导入到mssql后,他并不是自增型的int,需要手工设置,把导入后的自动编号字段的标识的“否”改为“是”,“种子”和“递增量”都为“1”,才能成为自动编号
所有的默认值都丢失了。主要是数字类型和日期类型
所有now(),time(),date()要改成getdate()
所有datediff(‘d‘, time1, time2)要改成datediff(day, time1, time2)
所有datediff(‘ww‘, time1, time2)要改成datediff(week, time1, time2)
所有datediff(‘d‘, time1, time2)要改成datediff(day, time1, time2)
在mssql server中,有许多保留字,在access中是没有的,当你把数据导入到mssql的时候,问题就出来了。mssql在导入的时候,会自动给这些字段(包括数据库中的表名)加上“[字段名]”,因此,你必须修改你的脚本,把相应的字段名字(或者表名字)加上中括号,或改变字段名字为不是mssql的保留字
在用access关于时间的使用,大家喜欢使用“select * from aaaa while time="
⑤ 力控组态如何在云端读取数据
咨询记录 · 回答于2021-10-21
并且须提供远程访问和1433口打开.
参考2005的.Sql Server 2005的1433端口打开和进行远程连接
如何打开sql server 2005 的1433端口
配置工具->Sql Server Configuration Manager->MSSQLSERVER的协议
看看TCP/IP协议是否启动,如果启动,右键菜单点"属性" ,在分页菜单中选"IP地址",把"IP1"和"IP2"中"TCP端口"为1433,
"已启用"改为"是"
配置工具->Sql Server Configuration Manager->SQL Native Client 配置->客户端协议->TCP/IP
选择TCP/IP右键菜单中"属性",确认"默认端口"是1433,"已启用"为"是"
SQL Server 2005 远程连接
⑦ 力控怎么读取sql表内容连接成功,亦可写入数值,就是不知如何读取(使用专家报表)。
用专家报表显示需要配置数据源,就是在专家报表的第一步三个选择中选择第二部与关系数据库向导,然后按照步骤配置,这部分可以看力控的帮助图形界面开发的第九章9.3.3。
⑧ 请教 力控组态软件 SQL 查询关系数据库语句 时间问题。。。
虽然不太清楚你的具体用法,但是感觉问题好像出在你的那些单引号和双引号上。
试试?
#Report.sqlqueryEx(-1,"select * from [表1] where [time] >="+StrTime(#Datetime.GetTime(),1)+" and [time]<= "+StrTime(#Datetime5.GetTime(),1));
⑨ 你好 我现在的sql已经安装SP4,并在路由器映射了端口,为什么在力控web发布界面里还是看不到sql的数据呢
那力控发布成功了吗?如果力控发布成功了,只有sql没有成功的话,你先将浏览器的历史记录都清除了,在将力控工程目录下的webroot(以前发布的内容)文件夹中的内容都删除了,然后重新发布,运行后,用telnet+空格+外网IP地址+空格+1433(1433是sql的端口)看看,端口有没有通,如果没有通,说明1433这个端口你没有打开。
⑩ 力控软件如何与SQL server 2000建立连接 把数据库采集到的数据传到力控里 高悬赏!!!!!!!!!!
你加我网络hi吧
1、 力控连接SQL Server 2000
新建ODBC数据源
添加SQL Server数据源
选择在SQL Server 2000建立好的数据库
建立完毕SQL_2000_Test数据源
在力控中使用增强型按钮
双击按钮
选择左键动作,选定SQLConnect
双击SQLConnect,在右侧函数的括号内输入字母e代替该函数,逗号,然后选择该界面工具栏最后一个工具:数据源选择
选择刚建立好的数据源SQL_2000_Test
2、 力控读取SQL Server 2000数据
添加增强型按钮,命名为读取SQL 2000数据,以触发数据读取
添加表格,以显示SQL Server 2000中数据
双击表格设置数据表中的列字段,这些字段应和SQL Server 2000中数据相对应
设置表格的名字为:biaoge
双击按钮“读取SQL 2000”,点击左键动作,在窗体右侧编写脚本。至此,设置完毕。运行时,首先点击“连接SQL 2000”按钮,然后点击“读取SQL 2000”按钮,SQL 2000中的相应表中的相应数据
在数据表管理中建立数据表绑定
字段是SQL Server 2000中的字段,参数类型可以在力控和SQL Server中通过力控的SQL函数转换(如),变量名为力控中对应变量,该变量地址为PLC地址,以便把该地址存入SQL Server 2000中。
双击“添加SQL Server 2000”按钮,点击“左键动作”在弹出的窗体的右侧写入脚本,完成即可
设置地址,添加数据,即可完成力控数据写入SQL Server 2000