CURRENT_TIME and non-Oracle Database

Folks !
When I use CURRENT_TIME in JPA named query, TopLink (Essentials) translates it into a "sysdate" function - this doesn't work on non-Oracle database like Postgres.
How do you get Toplink to substitute correct function for non-Oracle Database ?
thanks,
-Sanjay

I set following in my persistence.xml:
<property name="toplink.target-database" value="PostgreSQL" />
Still no luck.

Similar Messages

  • Join between Oracle and non-Oracle Database

    We are working at a project with the follow architecture:
    - 5 Databases (3 Oracle, 1 Sybase and 1 DB2);
    - Session Bean like Session Facade Pattern;
    - Entity Bean (BMP);
    - OC4J (Oracle Container for J2EE);
    The case is that we cannot make join between tables of different bases, for example, join with one table of Oracle and one other of DB2, therefore the customer does not possess tool midleware for this.
    The idea that appeared was: we make a query in table XXX of Oracle and return a HashTable with its respective VO�s and Keys (PKs from the first query that will serve of base for the second query), later we have access the DB2 that one second collection would return, to inside make join of the application.
    The problem is that with this solution, we will have fall in the performance. And we do not know if it is the best form.
    Do you have any idea???
    Thanks,
    Eric Sander

    Hi,
    If you have different databases then the join has to be done in the VM (either by the appserver or by you).
    If you want to do it yourself, I would try the following:
    -write one DAO per business object (at least one per database)
    -this DAO contains the specifics of its database
    -return a hashtable of keys and VOs from one DAO (as you say you do?)
    -in the other DAO, add a method "joinWith ( Hashtable foreignKeys )" that will return the join's result
    -implement the method along these lines:
    1. retrieve the candidate rows from the second DAO's tables (1 query execution)
    2. put the keys in a new Hashtable, say "candidateKeys" (meaning 1 iteration over all results)
    3. iterate over all elements of foreignKeys (1 iteration)
    4. for each element, check if a key exists in "candidateKeys" (1 hash lookup, very fast)
    5. add any such row to the result
    This is called a hash join (Oracle does it internally if you do a join).
    It is the fastest algorithm to do joins.
    Best,
    Guy
    http://www.atomikos.com - JTA transaction manager

  • Can Jdeveloper Be Used For Non-Oracle Databases

    I have been trying to evaluate Jdeveloper 9i and Jbuilder 7 Enterprise for Swing database development. I am particularly interested in the productivity enhancements such as BC4J and Jclient. The underlying database might be Oracle, SapDb (excellent, easy to use, and free), SQLServer, etc.
    I evaluated Jbuilder Enterprise tools and it worked flawlessly with SapDb. This emphasized using their DataExpress and DbSwing components which provide many useful capabilities similar to BC4j and Jclient. It also involved using their DBPilot tool which allows browsing similar to that provided via a Jdeveloper connection.
    I tried to use Jdeveloper for the same SapDB and it is essentially non-functional. I followed the instructions for using a non-default driver and tried to define a connection. It behaved inconsistently: often saying no suitable driver can be found and yet when you edit the connection and test without making any changes, it works. If you try to establish a BC4J definition, it is very inconsistent and fails to recognize important details as foreign keys. Even if you define a ViewLink manually, it still does not work properly if you attempt to define a Master-Detail Jclient form. As I have stated, all these types of capabilities worked flawlessly in their Jbuilder equivalent. Furthermore, I really like the fact that Jbuilder gives many of BC4Js benefits without needing a BC4J J2EE container.
    Has anyone had real success using Jdeveloper's advanced features to develop for non-Oracle databases and if so, how did you get around these types of problems?

    Hi,
    generally, SCAN can be used for 10g databases and you discovered the first half: for 10g databases you will have to modify the REMOTE_LISTENER entry for each 10g database instance to point to the SCAN listeners (as opposed to pointing to the remote local listeners, which is the default in 10g). You could even have the databases registers themselves with SCAN and the remote listeners, if you wanted to... It's more or less a matter of configuration. But for simplification reasons, I will stick to the case where you have your 10g databases register with the SCAN listeners only.
    Now the other half is the client and the client configuration. An 11g Rel. 2 client configured for RAC would have a TNSNAMES entry that has only one address line for the RAC databases. The host entry in this one address line should point to the SCAN (the SCAN name is ideally resolved in DNS). A 10g client configured for RAC would have as many address lines in the TNSNAMES as you have nodes in the cluster.
    The 10g client SCAN configuration would then be in the middle so to speak: You would have 3 address lines in your TNSNAMES, in which each host entry would resolve to one SCAN address (I assume you will use the recommended default of 3 SCAN IPs). If you choose, you can have a name resolution for each of your SCAN IPs, but this would not be required. Now, why would you do it this way? Because this configuration will always work and does not make you dependent on certain functionality that your DNS server may or may not offer.
    For the remaining questions: SCAN is a DNS entry resolving one name to more than one (typically 3) IP addresses. OID is short for Oracle Internet Directory, which is a complete LDAP server. And you are right that there is no document how to configure 10g clients for SCAN from Oracle yet. However, there is a quite good document on SCAN on otn.oracle.com/rac, but I am sure you are aware of it already.
    Hope that helps. Thanks,
    Markus

  • Pagination support for non-Oracle databases?

    Hi,
    I just read this thread (Pagination Support on pagination support. Is there any way to get pagination with non-Oracle databases? We are using an IBM iSeries / AS/400 DB2 database right now, and we're planning to use some local lightweight database in the near future as well (probably Cloudscape/Derby or "IBM Everyplace database".)
    We currently use code like this:
    String sql = "SELECT art FROM Artikel art" +
                /* dynamically generated where statement is added here */
                + "ORDER BY art.artikelNummer";
    Query q = em.createQuery(sql);
    q.setFirstResult(firstResult);
    q.setMaxResults(maxResults);If I look in the TopLink logs, I see queries like this:
    SELECT ARTNR, ARALT, ARAFJ, ARXII, ARAVJ, ARXIV, ARANJ, AHGCD, ARNVJ, ARCRJ, ARARK, ARFKJ, ARTNK, ARGP1, ASGCD, ARGP2, ARPR1, ARGP3, ARPR2, AREX1, ARPR3, AREX2, ARPR4, AREX3, ARASA, ARINA, ASSCD, ARIA1, ARBAN, ARIN1, ARBAV, ARIA2, ARBAK, ARIN2, ARCES, ARIA3, ARCDT, ARIN3, ARCRE, ARIA4, ARCWK, ARIN4, ARHBH, ARIA5, ARDFA, ARIN5, ARDFG, ARIA6, ARDOS, ARIN6, AREPW, ARINN, ARFOD, ARIAS, ARFOE, ARINS, ARFOF, ARNAB, ARFOI, ARNIB, ARFON, ARNIA, ARFOS, ARNN1, ARFTA, ARNA2, ARVIV, ARNO2, ARGAP, ARNN3, ARGPT, ARNA4, ARGPD, ARNO4, ARGPA, ARNN5, ARGPO, ARNA6, ARHIS, ARNN6, ARISP, ARNIO, ARKHM, ARNNS, MAGCD, AROVJ, MTGCD, ARPL1, ARMXM, ARPL2, MRKCD, ARPL3, ARMVR, ARVKJ, ARMIM, ARV12, ARMDT, ARVVJ, ARMTE, AR#VR, ARMTU, ARZLS, ARMTM, ARIAT, ARMWK, ARAVS, MPCCD, ARNVS, ARBTW, ARFJS, ARXI2, ARG2S, ARXI3, ARE1S, ARXI4, ARE3S, ARXI6, ARIB1, ARXI1, ARIB2, ARXI5, ARIB3, AROPI, ARIB4, ARPRV, ARIB5, SZGCD, ARIB6, ARSPC, ARINO, ARSMF, ARIOS, VEAAN, ARNIS, ARSYN, ARNO1, ARVR1, ARNA3, ARV1S, ARNN4, ARVR2, ARNO5, ARV2S, ARNIN, ARVR3, ARNOS, ARV3S, ARP1S, ARTFA, ARP3S, ARTFG, ARS12, ARUVC, ARZLD, ARUCW, ARAJS, ARBKV, ARCJS, ARVVI, ARG3S, ARVVP, ARINB, VPOCD, ARIO2, VPECD, ARIO4, ARVIH, ARIO6, ARVHG, ARNBS, ARVRW, ARNN2, ARVPR, ARNA5, ARVVR, ARNAS, ARVVS, ARP2S, ARVV1, ARSVV, ARZK1, ARNJS, ARNA1, ARNO3, ARIO1, ARNO6, ARIO5, AROJS, ARE2S, ARVJS, ARIBS, ARIAD, ARIO3, ARG1S FROM ART WHERE ((((ARUVC = 'N') AND (ARHIS = 'N')) AND (ASGCD = 7)) AND (AHGCD = 15)) ORDER BY ARTNR ASC
    (Yeah, I know we have too much columns in the table...)
    So, no pagination in the query. As you can see, we have a mechanism in place to dynamically generate a where clause. This is because the user can set filters. The problem is, if our user sets a filter that causes the result set to be significantly smaller, the performance is way better than when he sets no filter at all. We suppose this is because the whole result set is sent to TopLink, regardless of the values of firstResult and maxResults.
    We are using TopLink Essentials 2.1-10, by the way.
    Message was edited by:
    Bart Kummel

    Hi all,
    I'm trying to subclass <tt>DatabasePlatform</tt> to add pagination support for the AS/400 DB2 database of my customer. To be fair, it is not going very well so far.
    The first problem is, the query Chris found by googling (Re: Pagination support for non-Oracle databases?), does not work for AS/400s version of DB2. In fact, although it is called "DB2", the database on the AS/400 system is a whole other database than the "normal" DB2 database that runs on Windows and *nix. The AS/400 DB2 simply does not have a "ROW_NEXT" function.
    Another option would be to use the <b>row_number() over()</b> mehtod. But, as can be read here, this function is only available from version V5R4 of OS/400. And guess what? We're stuck on V5R3 at this client. (We cannot upgrade, because there's an application in use that's written in Delphi and IBM dropped the Delphi binding from V5R4...)
    So I pretty much ran out of options. On the mailing list I linked to above, someone mentions the option to make a sort of stored procedure that generates a row count number. An example of how to do this can be found here. I implemented it, and ended up with this code:
    package com.myclientsname.persistence;
    import java.sql.Connection;
    import java.sql.PreparedStatement;
    import java.sql.ResultSet;
    import java.sql.SQLException;
    import org.eclipse.persistence.expressions.ExpressionBuilder;
    import org.eclipse.persistence.internal.databaseaccess.DatabaseCall;
    import org.eclipse.persistence.internal.expressions.ExpressionSQLPrinter;
    import org.eclipse.persistence.internal.expressions.SQLSelectStatement;
    import org.eclipse.persistence.internal.sessions.AbstractSession;
    import org.eclipse.persistence.logging.SessionLog;
    import org.eclipse.persistence.platform.database.DatabasePlatform;
    import org.eclipse.persistence.sessions.SessionProfiler;
    public class AS400Platform extends DatabasePlatform {
        private static final long serialVersionUID = 0L;
        public AS400Platform(){
             super();
             super.setShouldBindAllParameters(false);
        public void printSQLSelectStatement(DatabaseCall call, ExpressionSQLPrinter printer, SQLSelectStatement statement) {
            int max = 0;
            int firstRow = 0;
            if (statement.getQuery()!=null){
                max = statement.getQuery().getMaxRows();
                firstRow = statement.getQuery().getFirstResult();
            if ( !(max>0) && !(firstRow>0) ){
                super.printSQLSelectStatement(call, printer,statement);
                return;
            } else {
                statement.setUseUniqueFieldAliases(true);
                ExpressionBuilder builder = new ExpressionBuilder();
                statement.addField(builder.getField("COUNTER() AS CNTR"));
                printer.printString("SELECT * FROM (");
                call.setFields(statement.printSQL(printer));
                printer.printString(") AS R WHERE R.CNTR >= ");
                printer.printParameter(DatabaseCall.FIRSTRESULT_FIELD);
                if ( max > 0 ){
                    // Use of binding parameters is not allowed here, so use
                    // String concatenation instead...
                    printer.printString(" FETCH FIRST " + max + " ROWS ONLY");
            call.setIgnoreFirstRowMaxResultsSettings(true);
        public boolean wasFailureCommunicationBased(SQLException exception, Connection connection, AbstractSession sessionForProfile){
            if (connection == null || this.pingSQL == null){
                //Without a connection we are  unable to determine what caused the error so return false.
                //The only case where connection will be null should be External Connection Pooling so
                //returning false is ok as there is no connection management requirement
                    //If there is no ping sql then we can not perform the ping.
                return false;
            PreparedStatement statement = null;
            try{
                sessionForProfile.startOperationProfile(SessionProfiler.ConnectionPing);
                if (sessionForProfile.shouldLog(SessionLog.FINE, SessionLog.SQL)) {// Avoid printing if no logging required.
                     sessionForProfile.log(SessionLog.FINE, SessionLog.SQL, getPingSQL(), (Object[])null, null, false);
                statement = connection.prepareStatement(getPingSQL());
                ResultSet result = statement.executeQuery();
                result.close();
                statement.close();
            }catch (SQLException ex){
                try{
                    // Had to add this check because of NullPointerExceptions
                    // (maybe a bug?)
                    if(statement != null){
                        //try to close statement again in case the query or result.close() caused an exception.
                        statement.close();
                } catch (SQLException exception2) {
                    //ignore;
                return true;
            }finally{
                sessionForProfile.endOperationProfile(SessionProfiler.ConnectionPing);
            return false;
    }(As you can see, I had to override the <tt>wasFailureCommunicationBased()</tt> method as well, due to some unexpected NPE's. (A bug, perhaps?))
    This code does work. However, the performance is not very well. The first page comes relatively fast, but as you browse further in the table, each page comes slower. I assume this is because the counter() method has to be evaluated for each row in the table.
    I have to get the performance better and constant. Does anyone have an idea how to optimize this further?
    Best regards,
    Bart Kummel

  • Can Forms Builder access non-Oracle Database?

    Does any one know whether Pracle Forms can access othe non-Oracle database via ODBC or JDBC to MS Access or MySQL?

    12282,
    In general, HTML DB gives you access to Oracle database facilities. These include heterogeneous services. Please search this forum for keyword "heterogeneous" and you can follow the threads that interest you.
    As for the comparison with brain surgery, I'd rank them about the same in terms of raw thrill.
    Scott

  • Connecting to Non-Oracle Databases

    How can we connect to Non-oracle databases like MS-SQL server using Developer Forms and reports?
    can any body please provide steps to do this.

    HI
    to connect to Non-Oracle Database u have to use OCA ,,,u have to define ODBC data source for the database <source1> u want to connect. to connect from the forms or reports
    user name/password@ODBC:source1.
    hope this help u
    try to look for the developer help

  • ADF with non Oracle databases?

    HI all,
    I would like to know, if there are people using ADF but without Oracle database. We are negotiating a new project, and I would IIke to develop it with ADF, but database will be Firebird or Postgres.
    I know its possible, but Im searching experiences of using ADF mainly with other databases, and if its worth for this kind of project, or otherwise,if there are so many "changes" not using Oracle db.
    Regards.

    http://docs.oracle.com/cd/E29049_01/web.1112/e16182/bcintro.htm#sm0063
    Some features are not supported for non-Oracle databases.
    http://www.oracle.com/technetwork/developer-tools/jdev/multidatabaseapp-085183.html
    Information about non-Oracle database connections appears in error dialog (8943379)
    http://www.oracle.com/technetwork/developer-tools/jdev/knownissues-097654.html

  • Connection to non-Oracle databases(MS Access) with Discoverer

    Hello guys
    I am new on this Forum. I am working with Oracle Discoverer and I will like to know how I can connect from Oracle Discover Administrator 4.1, to a non-Oracle database (on Microsoft Access or Dbase).
    Please help me
    Thanx.

    hello,
    to connect to a non-oracle datasource, you have to use OCA which
    leverages ODBC for that connection. this happens when the report
    is executed in the engine, no matter if it is run in client
    server or web. if you run it via web, you have to have the ODBC
    drivers installed on the SERVER, of course !
    regards,
    the oracle reports team --pc                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               

  • GLOBAL VARIABLES FOR NON-ORACLE DATABASE

    What is the alternative of global variables in Form 5.0 when using non-oracle databases. I know one way is passing parameters, is there any other way? I have few variables which need to be global in my application.
    Thank you
    null

    There is no other way.. you have to use either Global variables or parameter lists to pass values from one form to another form.. With in the form you can always use null canvas item to store and pass values in different program units or triggers..
    have a nice day
    Suresh

  • Global user in non-oracle database

    What is the alternative of global variables in Form 5.0 when using non-oracle databases. I know one way is passing parameters, is there any other way? I have few variables which need to be global in my application.
    Thank you
    null

    There is no other way.. you have to use either Global variables or parameter lists to pass values from one form to another form.. With in the form you can always use null canvas item to store and pass values in different program units or triggers..
    have a nice day
    Suresh

  • Jdeveloper Team RE Jdeveloper 9.0.3 For Non-Oracle Databases

    I see that support for non-Oracle databases and Third-Party JDBC drivers is very improved. However, I have tried to use the SAPDb JDBC driver and the BC4J tester and generated Swing clients all display greyed so that no updates are possible. This appears to be a bug since Jbuilder works fine with this driver. However, I think Jbuilder's Express dataset and commit philosophy is really bad. Any commitments as to when this will be fixed?

    Yes, I examined the attribute settings and manually adjusted them in the entities and views. They are now updateable. Using Jdeveloper with SAPDB would be very tedious. Jdeveloper did not recognize foreign key constrains, primary keys, nor that attributes were updateable.
    Is there a way to include SAPDB in the testing? It is trivial to install and run and would make Jdeveloper a more robust tool. I do not like Jbuilder's approach to master-detail client screens and would recommend using Jdeveloper for this type of work if it could handle more databases like SapDb.

  • Can you access non-Oracle database with HTML DB?

    Can you access non-Oracle database with HTML DB? If not, will this be possible in the future?
    I realize HTML DB is not an open-source product. However, it is necessary sometimes to get non-Oracle database info. JDeveloper supports this. It does not appear to me that HTML DB does. This is a major drawback to it being a product for more potential applications that rely on other database technology such as MySQL, etc.
    If it is possible, is this brain surgery to do it. HTML DB offers fast simplified development and it would be good if it was built in. Does anyone know of an example of accessing non-Oracle database that is available?

    12282,
    In general, HTML DB gives you access to Oracle database facilities. These include heterogeneous services. Please search this forum for keyword "heterogeneous" and you can follow the threads that interest you.
    As for the comparison with brain surgery, I'd rank them about the same in terms of raw thrill.
    Scott

  • BC4J and non Oracle DB

    Can I use BC4J to access non Oracle DB with JDeveloper 3.1?
    Can I use wizards to create such objects and can I test the application with the package module Test option?
    Thanks
    Ignazio

    Rob,
    Thanks. I found that article shortly after I posted the message. I'm new to BC4J, though, so I don't understand some of the limitations. Can someone explain:
    * "Do not use unsupported domains..." Does this mean we cannot create our own Domains? Or does BC4J come with some domains that we can't use?You can create your own domains. What this means is that you should use the business components generic domains rather than the business components Oracle domains, because the Oracle domains map to Oracle SQL types. The javadoc for both of these is in the online help, under Reference -> Business Components Generic Domain Reference and Reference -> Business Components Oracle Domains.
    * "Avoid using...CLOB, BLOB..." Really? Is there a workaround if we need to store binary data?Sorry, no workaround - we don't currently support large binary objects for non-Oracle databases.
    * "Use a file for Applications Module snapshots and don't use spill-to-disk." Is spill-to-disk the same as view row spillover (i.e. lots of rows in memory)?Yes.
    Any advice on what drivers to use for DB2 and SQL Server?The howto documents have instructions on what drivers to use. For DB2 you use the driver that comes with DB2. For SQL Server you have to download a driver; the howto has the instructions.
    Thanks again. Thanks
    Blaise

  • Accessing non-oracle databases from oracle

    Is there any way to access from oracle to non-oracle databases and copy the data using COPY command?

    Hi Nitin!
    You can access these legacy applications as so-called external applications. Check out the Application Server Single Sign On guide.
    cu
    Andreas

  • Non oracle database

    Hi
    Can i use micro soft access as non oracle database...if so how?
    i tried to do it..it is asking me for the connectivity details,such as schema....etc..
    Thanks,
    kiran.

    It is possible to write your own code in all the transactional triggers in a form (like on-select, on-fetch, on-update, etc.) I have only done that once, using dbms_sql calls to an Oracle server, and it is not an easy task. But once you do your first form, others would be easier.
    I am not sure what type of calls you would make to your different server, but I know it can be done.
    Steve Cosner
    null

Maybe you are looking for

  • Audiobook chapters no longer grouped by book on iPod classic

    My new iPod classic arrived today. When I synced it to iTunes 7.4.2 I found that the contents of the Audiobooks category were no longer grouped by title. Instead, all of the files were simply alphabetically sorted. So all of the "Chapter 1"s from all

  • Windows Server 2012 VSS error "The system writer is missing"

    Hello All, I have a HP server that I have just installed Server 2012 standard, SQL Server 2012 and Sharepoint 2013. When I try to take bare metal backup I get the error: "The system writer is missing", I have tried the backup as the local admin and d

  • How can I get back to InDesign CS5?

    Have only CS3 on disc; however have upgraded twice since then. Am a volunteer for a non-profit genealogical society (production editor)  and cannot spend $20 monthly on CC for them (widowed and on tight budget!). Got a new desktop with Win 8.1 and al

  • Problems copying large files to external disks

    I have a lot of media and so multiple USB and network based external hard disks. I'm having trouble with two in particular that are recent buys. I initially mounted them via a USB hub onto my Time Capsule, but when I had errors, I've now tried mounti

  • Trumpet Sound Effect

    I need a trumpet sound effect, something "fan-fareish" like you would hear in movies when royalty enters a room. Does anyone have any suggestions? I browed through Soundtrack really quick and didn't find anything I especially liked there...