Java to ODBC Connection
You must have release 1.3 or later of the VTScada ODBC driver to connect from a Java® program.
The following Java code sample assumes that ODBC access has been configured on the same workstation, as described elsewhere in this chapter, that your application is available via a realm named "SQLServicesRealm", and that your application has a logged Analog Input tag named "ai1".
import java.sql.*;
public class VTScadaJdbcDemo {
public static void main(String args[]) throws Exception {
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection con = DriverManager.getConnection("jdbc:odbc:DRIVER=VTSODBC Driver;SERVER=127.0.0.1;PORT=80;REALM=SQLServicesRealm;");
Statement stmt = con.createStatement();
System.out.println("");
System.out.println("All configured alarms:");
ResultSet rs = stmt.executeQuery("SELECT * From :Alarms");
while (rs.next()) {
String name = rs.getString("Name");
String pri = rs.getString("Priority");
System.out.println(name + ": " + pri);
}
System.out.println("");
System.out.println("All notes from SystemNotes:");
ResultSet rs2 = stmt.executeQuery("SELECT * From SystemNotes");
while (rs2.next()) {
Timestamp time = rs2.getTimestamp("Timestamp");
String value = rs2.getString("Value");
System.out.println(time + ": " + value);
}
System.out.println("");
System.out.println("All Security events from alarm history:");
ResultSet rs3 = stmt.executeQuery("SELECT * From :AlarmHistory WHERE Area=\"Security\"");
while (rs3.next()) {
Timestamp time = rs3.getTimestamp("Timestamp");
String message = rs3.getString("Message");
System.out.println(time + ": " + message);
}
System.out.println("");
System.out.println("Weekly interpolated values for ai1 for November 2006:");
ResultSet rs4 = stmt.executeQuery("SELECT * FROM ai1:1W where Timestamp > '2006-11-01 0:00:00' and Timestamp < '2006-12-01 0:00:00'");
while (rs4.next()) {
Timestamp time = rs4.getTimestamp("Timestamp");
Double message = rs4.getDouble("Value:Interpolated");
System.out.println(time + ": " + message);
}
con.close();
}
}