欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 运维知识 > 数据库 >内容正文

数据库

PI数据库开发-java(读写pi中的时序数据和关系数据)

发布时间:2024/3/12 数据库 41 豆豆
生活随笔 收集整理的这篇文章主要介绍了 PI数据库开发-java(读写pi中的时序数据和关系数据) 小编觉得挺不错的,现在分享给大家,帮大家做个参考.
  • pi数据库分为采集模块(接口机)、DA(数据库)、AF(建模用)、PI Vision(图表用)、PI域控机等。
  • java开发需要在域内装OLEADB  PROVIDER、OLEAD(SQL DAS)、PI JDBC Driver软件。如图:

     具体网址为:https://customers.osisoft.com/s/knowledgearticle?knowledgeArticleUrl=Playbook-PI-JDBC-Driver                                                                      pi jdbc  driver具体资料:PI JDBC                                            pi  jdbc底层使用的还是pi oledb provider,所以必须了解下pi  oledb provider。网址为:PI OLEDB Provider

  • 按照软件以后使用pi推荐的DbVisualizer连接工具测试,是否成功:https://customers.osisoft.com/s/knowledgearticle?knowledgeArticleUrl=How-to-setup-DBVisualizer-for-PI-JDBC-Driver
  •  成功后在项目中增加pi的jar及pom配置:

    pom中:

    <dependency><groupId>com.osisoft</groupId><artifactId>PIJDBCDriver</artifactId><version>1.7.21114.1</version><scope>system</scope><systemPath>${pom.basedir}/lib/PIJDBCDriver.jar</systemPath> </dependency>

    pom中build增加:

    <resources><resource><directory>lib</directory><targetPath>/BOOT-INF/lib/</targetPath><includes><include>**/*.jar</include></includes></resource><resource><directory>src/main/resources</directory></resource> </resources>

    如下图:

     5.项目增加多数据源管理:

  • jdbc配置:
  • 代码中增加pi  jdbc的bean:
  • @Bean(name="piDataSource") @ConfigurationProperties("spring.datasource.druid.pi") public DataSource piDataSource(DruidProperties druidProperties) {DruidDataSource dataSource = DruidDataSourceBuilder.create().build();dataSource.setDriverClassName("com.osisoft.jdbc.Driver");dataSource.addConnectionProperty("TrustedConnection","No");dataSource.addConnectionProperty("ProtocolOrder","Https/Soap:5461,NetTcp:5462");dataSource.addConnectionProperty("LogConsole","True");dataSource.addConnectionProperty("LogLevel","0");return druidProperties.dataSource(dataSource); }

    6.使用pi jdbc,使用数据源切换到pi数据库查询数据

    7.mapper中使用pi数据库中表的说明:

    1)查询实时数据:pisnapshot为快照表,只能查询不能进行其它操作

    select tag, time, value from pisnapshot

    2)插入或修改数据:picomp2  picomp2个表都可,picomp比较老,建议使用picomp2。
    insert into  piarchive..picomp2 (tag,value,time,status) values('zhtest',233,'2021-07-08 11:36:26',0);

    update  piarchive..picomp2 set time='2021-07-06 11:36:26',value=233 where tag='zhtest';

     具体表说明见:

    PI OLEDB Provider

    总结

    以上是生活随笔为你收集整理的PI数据库开发-java(读写pi中的时序数据和关系数据)的全部内容,希望文章能够帮你解决所遇到的问题。

    如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。