Skip to content
Advertisement

Creating a Java Connector for Pervasive PSQL

How can I create a connector for Pervasive PSQL in Java?

How can I create a connector for Pervasive PSQL? I created a sample connector, but I am not sure whether it is right or wrong.

Advertisement

Answer

Here’s a simple program I have that works for me to connect to a Pervasive PSQL database:

/*
 * SQLStatement.java
 * Simple JDBC Sample using Pervasive JDBC driver.
 */
import java.*;
import java.sql.*;
import pervasive.jdbc.*;
import java.io.*;


public class SQLStatement {

    public static void main(String args[]) {

        String url = "jdbc:pervasive://localhost:1583/demodata?transport=tcp";
        Connection con;

        String query = "select* from class";
        Statement stmt;

        try {
            Class.forName("com.pervasive.jdbc.v2.Driver");

        } catch(Exception e) {
            System.err.print("ClassNotFoundException: ");
            System.out.println(e.toString());
            System.err.println(e.getMessage());
        }

        try {
            Connection conn = DriverManager.getConnection(url);

            stmt = conn.createStatement();

            ResultSet rs = stmt.executeQuery(query);
            ResultSetMetaData rsmd = rs.getMetaData();
            int numberOfColumns = rsmd.getColumnCount();
            int rowCount = 1;
            long j = 0;
            int i = 1;

            while (rs.next()) {
                System.out.println("Row " + rowCount + ":  ");
                for (i = 1; i <= numberOfColumns; i++) {
                    System.out.print("   Column " + i + ":  ");
                    System.out.println(rs.getString(i));
                }
                System.out.println("");
                rowCount++;
            }

            System.out.println("Waiting.");
            String thisLine;
            try {
                InputStreamReader converter = new InputStreamReader(System.in);
                BufferedReader br = new BufferedReader(converter);
                while ((thisLine = br.readLine()) != null) { // while loop begins here
                    System.out.println(thisLine);
                } // end while
            } // end try
            catch (IOException e) {
                System.err.println("Error: " + e);
            }

            stmt.close();
            conn.close();

        } catch(SQLException ex) {
            System.err.print("SQLException: ");
            System.err.println(ex.getMessage());
        }
    }
}

To compile it, I use:

javac -classpath "C:Program FilesPervasive SoftwarePSQLbinpvjdbc2.jar";"C:Program FilesPervasive SoftwarePSQLbinpvjdbc2x.jar";"C:Program FilesPervasive SoftwarePSQLbinjpscs.jar";. SQLStatement.java

And to run it, I use:

java -classpath "C:Program FilesPervasive SoftwarePSQLbinpvjdbc2.jar";"C:Program FilesPervasive SoftwarePSQLbinpvjdbc2x.jar";"C:Program FilesPervasive SoftwarePSQLbinjpscs.jar";. SQLStatement.java

You might need to change the location of the PSQL JAR files if you are using a 64-bit OS.

User contributions licensed under: CC BY-SA
9 People found this is helpful
Advertisement