//================================================================= // PostgreSQL_JDBC Class //================================================================= // // This class is used to control the running of the a generic // class to access the PostgreSQL database. // // << PostgreSQL_JDBC.java >> // //================================================================= // Copyright (C) 2005-2010 Dana M. Proctor // Version 1.01 02/13/2010 // // This program is free software; you can redistribute it and/or // modify it under the terms of the GNU General Public License // as published by the Free Software Foundation; either version // 2 of the License, or (at your option) any later version. This // program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty // of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See // the GNU General Public License for more details. You should // have received a copy of the GNU General Public License along // with this program; if not, write to the Free Software Foundation, // Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA // (http://opensource.org) // //================================================================= // Revision History // Changes to the code should be documented here and reflected // in the present version number. Author information should // also be included with the original copyright author. //================================================================= // Version 1.0 12/23/2008 PostgreSQL Connection Main Application. // 1.1 02/13/2010 Generalized to be Used With Any Test Case. // 1.2 03/15/2010 Explicit Exception Output in main() & No // New Instance for Class.forName(). // 1.3 11/22/2010 Added testNullInsert(). // //----------------------------------------------------------------- // danap@dandymadeproductions.com //================================================================= //================================================================= // PostgreSQL_JDBC Application //================================================================= import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; /** * The PostgreSQL class is used to control the running of the a generic class to * access the PostgreSQL database. Arguments -debug. * @author Dana M. Proctor * @version 1.3 11/22/2010 */ class PostgreSQL_JDBC2 { //============================================ // Creation of the necessary class instance. //============================================= //============================================================== // PostgreSQL_JDBC Constructor //============================================================== public PostgreSQL_JDBC2(Connection con) { testNullInsert(con); } //============================================================== // Test Methods //============================================================== private void testNullInsert(Connection con) { // Method Instances String sqlStatementString; Statement sqlStatement; ResultSet rs; String identifierQuoteString = "\""; try { // Setup a connection statement. sqlStatement = con.createStatement(); sqlStatementString = "INSERT INTO " + identifierQuoteString + "public" + identifierQuoteString + "." + identifierQuoteString + "test" + identifierQuoteString + " (" + identifierQuoteString + "id" + identifierQuoteString + "," + identifierQuoteString + "name" + identifierQuoteString + ") VALUES (null,'" + "aaa')"; System.out.println(sqlStatementString); rs = sqlStatement.executeQuery(sqlStatementString); rs.close(); sqlStatement.close(); } catch (SQLException sqle) { System.out.println("SQL Exeception" + sqle); } } //============================================================ // Main public access point method for instantiating the // PostgreSQL_JDBC application. Arguments: database, username, // & password. //============================================================== public static void main(String[] args) { String host, database, username, password; Connection dbConnection; // Collect connection properties. and setup connection. host = "localhost"; dbConnection = null; if (args.length != 0) { database = args[0]; username = (args.length > 1) ? args[1] : null; password = (args.length > 2) ? args[2] : null; } else { database = "my_database"; username = "user"; password = "password"; } try { Class.forName("org.postgresql.Driver"); } catch (ClassNotFoundException cne) {System.out.println("ClassNotFoundException" + cne.toString());} // Try to make a connection. try { dbConnection = DriverManager.getConnection("jdbc:postgresql://" + host + "/" + database, username, password); // Connection Good. if (dbConnection != null) { System.out.println("Connection Created"); // Go Do Something. new PostgreSQL_JDBC(dbConnection); // Close. dbConnection.close(); System.out.println("Connection Closed"); } } catch (SQLException sqle) {System.out.println("SQLExeception" + sqle.toString());} } }