com.ibm.as400.vaccess

Class SQLQueryBuilderPane

  • All Implemented Interfaces:
    ImageObserver, MenuContainer, Serializable

    Deprecated. 
    Use Java Swing instead, along with the classes in package com.ibm.as400.access

    public class SQLQueryBuilderPane
    extends JComponent
    implements Serializable
    The SQLQueryBuilderPane class represents a panel which allows a user to dynamically build a SQL query using graphical interfaces. The corresponding SQL is generated.

    Data for the GUI is retrieved from the system when load() is called. If load() is not called, the tables in the GUI will be empty.

    If table names are provided, then the user is presented choices based on the fields within those tables. If userSelectTables is true, the user may modify the tables on which the query is built. tableSchemas and userSelectTableSchemas are used to determine the list of tables which the user can choose from, however the user is not prevented from using tables not in these schemas.

    It is up to the user to register a JDBC driver when using this class. For example, the following code registers the IBM Toolbox for Java JDBC driver.

       DriverManager.registerDriver (new com.ibm.as400.access.AS400JDBCDriver ());
    

    Most errors are reported by firing ErrorEvents, rather than throwing exceptions. Users should listen for ErrorEvents in order to diagnose and recover from error conditions.

    SQLQueryBuilderPane objects generate the following events:

    • ErrorEvent
    • PropertyChangeEvent
    // Register JDBC driver.
    DriverManager.registerDriver (new com.ibm.as400.access.AS400JDBCDriver ());
    
     // Set up table for result set contents.
    final SQLConnection connection = new SQLConnection("jdbc:as400://MySystem");
    final SQLQueryBuilderPane pane = new SQLQueryBuilderPane(connection);
    
     // Set up window to hold table
    JFrame frame = new JFrame ("My Window");
    WindowListener l = new WindowAdapter()
    {
         // Close the pane when window is closed.
        public void windowClosing(WindowEvent e)
        {
            pane.close();
            connection.close();
        }
    };
    frame.addWindowListener(l);
    
    // Set up the error dialog adapter.
    pane.addErrorListener (new ErrorDialogAdapter (frame));
    
    // Add the component and get data from system.
    frame.getContentPane().add(pane);
    pane.load();
    
     // Display the window
    frame.setVisible(true)
    
    See Also:
    Serialized Form
    • Constructor Detail

      • SQLQueryBuilderPane

        public SQLQueryBuilderPane()
        Deprecated. 
        Constructs a SQLQueryBuilderPane object.
      • SQLQueryBuilderPane

        public SQLQueryBuilderPane(SQLConnection connection)
        Deprecated. 
        Constructs a SQLQueryBuilderPane object.
        Parameters:
        connection - The SQL connection.
      • SQLQueryBuilderPane

        public SQLQueryBuilderPane(SQLConnection connection,
                           String[] tables)
        Deprecated. 
        Constructs a SQLQueryBuilderPane object.
        Parameters:
        connection - The SQL connection.
        tables - The names of the tables to be used for the query. Tables should be in the form of schema.table.
    • Method Detail

      • addErrorListener

        public void addErrorListener(ErrorListener listener)
        Deprecated. 
        Adds a listener to be notified when an error occurs. The listener's errorOccurred() method will be called.
        Parameters:
        listener - The listener.
      • addPropertyChangeListener

        public void addPropertyChangeListener(PropertyChangeListener listener)
        Deprecated. 
        Adds a listener to be notified when the value of any bound property is changed. The listener's propertyChange() method will be called.
        Overrides:
        addPropertyChangeListener in class Container
        Parameters:
        listener - The listener.
      • addVetoableChangeListener

        public void addVetoableChangeListener(VetoableChangeListener listener)
        Deprecated. 
        Adds a listener to be notified when the value of any constrained property is changed. The listener's vetoableChange() method will be called.
        Overrides:
        addVetoableChangeListener in class JComponent
        Parameters:
        listener - The listener.
      • getConnection

        public SQLConnection getConnection()
        Deprecated. 
        Returns the SQL connection with which to access data for the GUI.
        Returns:
        The SQL connection.
      • getQuery

        public String getQuery()
        Deprecated. 
        Returns the SQL query that corresponds to the user's selections. An empty String is returned if no tables have been selected.
        Returns:
        The SQL query that corresponds to the user's selections.
      • getTables

        public String[] getTables()
        Deprecated. 
        Returns the names of the tables used in the query.
        Returns:
        The table names.
      • getTableSchemas

        public String[] getTableSchemas()
        Deprecated. 
        Returns the schemas for which the tables will be listed for inclusion in the query.
        Returns:
        The schema names.
      • getUserSelectTables

        public boolean getUserSelectTables()
        Deprecated. 
        Returns true if the user is able to select and change the tables that are included in the query. This property controls when the table page is enabled or disabled. The default value is true.
        Returns:
        true if the user is allowed to change the tables in the query; false otherwise.
      • getUserSelectTableSchemas

        public boolean getUserSelectTableSchemas()
        Deprecated. 
        Returns true if the user is able to select and change the schemas for which tables are shown. This property controls whether the list of tables on the table page is changeable. The default value is true.
        Returns:
        true if the user is allowed to change the schemas whose tables are shown; false otherwise.
      • load

        public void load()
        Deprecated. 
        Gets data from the system. If the connection is null, the system JDBC driver will be used, and the user will be prompted for sign-on information.
      • removeErrorListener

        public void removeErrorListener(ErrorListener listener)
        Deprecated. 
        Removes a listener from being notified when an error occurs.
        Parameters:
        listener - The listener.
      • removePropertyChangeListener

        public void removePropertyChangeListener(PropertyChangeListener listener)
        Deprecated. 
        Removes a listener from being notified when the value of any bound property is changed.
        Overrides:
        removePropertyChangeListener in class Component
        Parameters:
        listener - The listener.
      • removeVetoableChangeListener

        public void removeVetoableChangeListener(VetoableChangeListener listener)
        Deprecated. 
        Removes a listener from being notified when the value of any constrained property is changed.
        Overrides:
        removeVetoableChangeListener in class JComponent
        Parameters:
        listener - The listener.
      • setConnection

        public void setConnection(SQLConnection connection)
                           throws PropertyVetoException
        Deprecated. 
        Sets the SQL connection with which to access data for the GUI. This property is bound and constrained. Note that the data in the GUI will not change until a load() is done.
        Parameters:
        connection - The SQL connection.
        Throws:
        PropertyVetoException - If the change is vetoed.
      • setTables

        public void setTables(String[] tables)
                       throws PropertyVetoException
        Deprecated. 
        Sets the table names for the query. This property is bound and constrained. Note that the data in the GUI will not change until a load() is done.
        Parameters:
        tables - The names of the tables used in the query. Tables should be in the form of schema.table.
        Throws:
        PropertyVetoException - If the change is vetoed.
      • setTableSchemas

        public void setTableSchemas(String[] tableSchemas)
                             throws PropertyVetoException
        Deprecated. 
        Sets the schemas for which the tables will be listed for inclusion in the query. The default is no schemas, so no tables will be listed. This property is bound and constrained.
        Parameters:
        tableSchemas - The schemas for which tables will be listed.
        Throws:
        PropertyVetoException - If the change is vetoed.
      • setUserSelectTables

        public void setUserSelectTables(boolean flag)
                                 throws PropertyVetoException
        Deprecated. 
        Sets whether the user will be able to select and change the tables that are included in the query. This property controls when the table page is enabled or disabled. The default value is true. This property is bound and constrained.
        Parameters:
        flag - true if the user is allowed to change the tables in the query; false otherwise.
        Throws:
        PropertyVetoException - If the change is vetoed.
      • setUserSelectTableSchemas

        public void setUserSelectTableSchemas(boolean flag)
                                       throws PropertyVetoException
        Deprecated. 
        Sets whether the user will be able to select and change the schemas for which tables are shown. This property controls whether the list of tables on the table page is changeable. The default value is true. This property is bound and constrained.
        Parameters:
        flag - true if the user is allowed to change the schemas whose tables are shown; false otherwise.
        Throws:
        PropertyVetoException - If the change is vetoed.