Package org.datanucleus.store.rdbms.adapter

Examples of org.datanucleus.store.rdbms.adapter.DatabaseAdapter.supportsOption()


            while (iter.hasNext())
            {
                SQLJoin join = iter.next();
                if (join.getType() == JoinType.CROSS_JOIN)
                {
                    if (dba.supportsOption(RDBMSAdapter.ANSI_CROSSJOIN_SYNTAX))
                    {
                        // ANSI-92 style joins, separate joins by space
                        sql.append(" ");
                        sql.append(join.toFromClause(dba, false));
                    }
View Full Code Here


                        sql.append(join.getTable().toString());
                    }
                }
                else
                {
                    if (dba.supportsOption(RDBMSAdapter.ANSI_JOIN_SYNTAX))
                    {
                        // ANSI-92 style joins, separate joins by space
                        sql.append(" ");
                        sql.append(join.toFromClause(dba, false));
                    }
View Full Code Here

            while (iter.hasNext())
            {
                SQLJoin join = iter.next();
                if (join.getType() == JoinType.CROSS_JOIN)
                {
                    if (dba.supportsOption(RDBMSAdapter.ANSI_CROSSJOIN_SYNTAX))
                    {
                        // ANSI-92 style joins, separate joins by space
                        sql.append(" ");
                        sql.append(join.toFromClause(dba, lock));
                    }
View Full Code Here

                    {
                        // ANSI-92 style joins, separate joins by space
                        sql.append(" ");
                        sql.append(join.toFromClause(dba, lock));
                    }
                    else if (dba.supportsOption(RDBMSAdapter.CROSSJOIN_ASINNER11_SYNTAX))
                    {
                        sql.append(" INNER JOIN " + join.getTable() + " ON 1=1");
                    }
                    else
                    {
View Full Code Here

                        sql.append(join.getTable().toString());
                    }
                }
                else
                {
                    if (dba.supportsOption(RDBMSAdapter.ANSI_JOIN_SYNTAX))
                    {
                        // ANSI-92 style joins, separate joins by space
                        sql.append(" ");
                        sql.append(join.toFromClause(dba, lock));
                    }
View Full Code Here

        }

        if (unions != null)
        {
            // Add on any UNIONed statements
            if (!dba.supportsOption(RDBMSAdapter.UNION_SYNTAX))
            {
                throw new NucleusException(LOCALISER.msg("052504", "UNION")).setFatal();
            }

            Iterator<SQLStatement> unionIter = unions.iterator();
View Full Code Here

            }

            Iterator<SQLStatement> unionIter = unions.iterator();
            while (unionIter.hasNext())
            {
                if (dba.supportsOption(RDBMSAdapter.USE_UNION_ALL))
                {
                    sql.append(" UNION ALL ");
                }
                else
                {
View Full Code Here

            {
                sql.append(" ").append(limitClause);
            }
        }

        if (lock && dba.supportsOption(RDBMSAdapter.LOCK_WITH_SELECT_FOR_UPDATE))
        {
            // Add any required locking based on the RDBMS capability
            if (distinct && !dba.supportsOption(RDBMSAdapter.DISTINCT_WITH_SELECT_FOR_UPDATE))
            {
                NucleusLogger.QUERY.warn(LOCALISER.msg("052502"));
View Full Code Here

        }

        if (lock && dba.supportsOption(RDBMSAdapter.LOCK_WITH_SELECT_FOR_UPDATE))
        {
            // Add any required locking based on the RDBMS capability
            if (distinct && !dba.supportsOption(RDBMSAdapter.DISTINCT_WITH_SELECT_FOR_UPDATE))
            {
                NucleusLogger.QUERY.warn(LOCALISER.msg("052502"));
            }
            else
            {
View Full Code Here

            else
            {
                sql.append(" " + dba.getSelectForUpdateText());
            }
        }
        if (lock && !dba.supportsOption(RDBMSAdapter.LOCK_WITH_SELECT_FOR_UPDATE) &&
            !dba.supportsOption(RDBMSAdapter.LOCK_OPTION_PLACED_AFTER_FROM) &&
            !dba.supportsOption(RDBMSAdapter.LOCK_OPTION_PLACED_WITHIN_JOIN))
        {
            NucleusLogger.QUERY.warn("Requested locking of query statement, but this RDBMS doesn't suppot a convenient mechanism");
        }
View Full Code Here

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.