Search in sources :

Example 11 with INode

use of net.sourceforge.sqlexplorer.dbstructure.nodes.INode in project tdq-studio-se by Talend.

the class GenerateSelectSQLAction method createColumnSelect.

/**
 * @return query string for full table select
 */
private String createColumnSelect() {
    // $NON-NLS-1$
    StringBuffer query = new StringBuffer("select ");
    // $NON-NLS-1$
    String sep = "";
    // $NON-NLS-1$
    String table = "";
    for (INode node : _selectedNodes) {
        if (node instanceof ColumnNode) {
            ColumnNode column = (ColumnNode) node;
            if (table.length() == 0) {
                table = column.getQualifiedParentTableName();
            }
            if (column.getQualifiedParentTableName().equals(table)) {
                query.append(sep);
                query.append(quote(column.getName(), getQuoteString(column)));
                // $NON-NLS-1$
                sep = ", ";
            }
        }
    }
    // $NON-NLS-1$
    query.append(" from ");
    query.append(fixTableName(table));
    return query.toString();
}
Also used : INode(net.sourceforge.sqlexplorer.dbstructure.nodes.INode) ColumnNode(net.sourceforge.sqlexplorer.dbstructure.nodes.ColumnNode)

Example 12 with INode

use of net.sourceforge.sqlexplorer.dbstructure.nodes.INode in project tdq-studio-se by Talend.

the class GenerateSelectSQLAction method fixTableName.

/**
 * ADD yyi 2011-04-22 20716:remove quotes for Sybase ASE query
 *
 * @param qualifiedName
 * @return
 */
protected String fixTableName(String qualifiedName) {
    INode node = _selectedNodes[0];
    try {
        // $NON-NLS-1$
        String sybase1 = "Adaptive Server Enterprise";
        // $NON-NLS-1$
        String sybase2 = "Adaptive Server Enterprise | Sybase Adaptive Server IQ";
        String databaseProductName = node.getSession().getDatabaseProductName();
        if (sybase1.equals(databaseProductName) || sybase2.equals(databaseProductName)) {
            // $NON-NLS-1$ //$NON-NLS-2$
            return qualifiedName.replaceAll("\"", "");
        }
    } catch (SQLException e) {
        e.printStackTrace();
    }
    return qualifiedName;
}
Also used : INode(net.sourceforge.sqlexplorer.dbstructure.nodes.INode) SQLException(java.sql.SQLException)

Example 13 with INode

use of net.sourceforge.sqlexplorer.dbstructure.nodes.INode in project tdq-studio-se by Talend.

the class ImportedKeysTab method getDataSet.

public DataSet getDataSet() throws Exception {
    INode node = getNode();
    if (node == null) {
        return null;
    }
    if (node instanceof TableNode) {
        TableNode tableNode = (TableNode) node;
        ResultSet resultSet = node.getSession().getMetaData().getImportedKeys(tableNode.getTableInfo());
        DataSet dataSet = new DataSet(resultSet, new int[] { 3, 4, 8, 9, 10, 11, 12, 13, 14 });
        resultSet.close();
        return dataSet;
    }
    return null;
}
Also used : INode(net.sourceforge.sqlexplorer.dbstructure.nodes.INode) DataSet(net.sourceforge.sqlexplorer.dataset.DataSet) TableNode(net.sourceforge.sqlexplorer.dbstructure.nodes.TableNode) ResultSet(java.sql.ResultSet)

Example 14 with INode

use of net.sourceforge.sqlexplorer.dbstructure.nodes.INode in project tdq-studio-se by Talend.

the class PreviewTab method getDataSet.

public DataSet getDataSet() throws Exception {
    INode node = getNode();
    if (node == null) {
        return null;
    }
    if (node instanceof TableNode) {
        TableNode tableNode = (TableNode) node;
        int maxResults = SQLExplorerPlugin.getDefault().getPluginPreferences().getInt(IConstants.PRE_ROW_COUNT);
        if (maxResults == 0) {
            maxResults = 50;
        }
        SQLConnection connection = null;
        Statement statement = null;
        ResultSet resultSet = null;
        DataSet dataSet = null;
        try {
            connection = tableNode.getSession().grabConnection();
            statement = connection.createStatement();
            statement.setMaxRows(maxResults);
            // $NON-NLS-1$
            statement.execute("select * from " + tableNode.getQualifiedName());
            resultSet = statement.getResultSet();
            dataSet = new DataSet(resultSet, null);
        } finally {
            if (resultSet != null)
                try {
                    resultSet.close();
                } catch (SQLException e) {
                    SQLExplorerPlugin.error(Messages.getString("DataSet.errorCloseRs"), e);
                }
            if (statement != null)
                try {
                    statement.close();
                } catch (SQLException e) {
                    SQLExplorerPlugin.error(Messages.getString("DataSet.errorCloseStmt"), e);
                }
            if (connection != null)
                getNode().getSession().releaseConnection(connection);
        }
        return dataSet;
    }
    return null;
}
Also used : INode(net.sourceforge.sqlexplorer.dbstructure.nodes.INode) DataSet(net.sourceforge.sqlexplorer.dataset.DataSet) SQLException(java.sql.SQLException) Statement(java.sql.Statement) SQLConnection(net.sourceforge.sqlexplorer.dbproduct.SQLConnection) TableNode(net.sourceforge.sqlexplorer.dbstructure.nodes.TableNode) ResultSet(java.sql.ResultSet)

Example 15 with INode

use of net.sourceforge.sqlexplorer.dbstructure.nodes.INode in project tdq-studio-se by Talend.

the class PrimaryKeysTab method getDataSet.

public DataSet getDataSet() throws Exception {
    INode node = getNode();
    if (node == null) {
        return null;
    }
    if (node instanceof TableNode) {
        TableNode tableNode = (TableNode) node;
        ResultSet resultSet = node.getSession().getMetaData().getPrimaryKeys(tableNode.getTableInfo());
        DataSet dataSet = new DataSet(resultSet, new int[] { 4, 5, 6 });
        resultSet.close();
        return dataSet;
    }
    return null;
}
Also used : INode(net.sourceforge.sqlexplorer.dbstructure.nodes.INode) DataSet(net.sourceforge.sqlexplorer.dataset.DataSet) TableNode(net.sourceforge.sqlexplorer.dbstructure.nodes.TableNode) ResultSet(java.sql.ResultSet)

Aggregations

INode (net.sourceforge.sqlexplorer.dbstructure.nodes.INode)22 TableNode (net.sourceforge.sqlexplorer.dbstructure.nodes.TableNode)15 DataSet (net.sourceforge.sqlexplorer.dataset.DataSet)12 ResultSet (java.sql.ResultSet)7 ArrayList (java.util.ArrayList)6 SQLException (java.sql.SQLException)4 Iterator (java.util.Iterator)3 List (java.util.List)2 TreeSet (java.util.TreeSet)2 SQLConnection (net.sourceforge.sqlexplorer.dbproduct.SQLConnection)2 DatabaseNode (net.sourceforge.sqlexplorer.dbstructure.nodes.DatabaseNode)2 SchemaNode (net.sourceforge.sqlexplorer.dbstructure.nodes.SchemaNode)2 TableFolderNode (net.sourceforge.sqlexplorer.dbstructure.nodes.TableFolderNode)2 Point (org.eclipse.swt.graphics.Point)2 DatabaseMetaData (java.sql.DatabaseMetaData)1 Statement (java.sql.Statement)1 LinkedList (java.util.LinkedList)1 SQLCannotConnectException (net.sourceforge.sqlexplorer.SQLCannotConnectException)1 Alias (net.sourceforge.sqlexplorer.dbproduct.Alias)1 User (net.sourceforge.sqlexplorer.dbproduct.User)1