DATABASE LINK  with GROUP BY SQL Statemnets

We have Oracle Database Link linked to MySQL . We want to force executing remote statement that contains group by on the remote MySQL server and let MySQL do the aggregation instead of Oracle.
We tried also DRIVING_SITE but it doesn't help and the query that was sent to MySQL from Oracle DB Link didn't include GROUP BY and it looks like that the Group by was executed on the local Oracle.
Is there a way for force executing GROUP BY statements on remote DB instead of the local Oracle DB?

Try to create a local view based ao the remote table and use the view.

Similar Messages

  • Using database link  with a dynamic SQL in Forms 5

    I have a Form 5 application where a database link is specified in a client version of dynamic SQL. The function that the application is designed to perform is to access data in a table in a remote database and use it to populate another table in a local database with the same structure as the source table. Dynamic SQL is used because the name of the table can only be resolved during run time.
    The problem is that it gives error with code 'ORA-03113' and text 'End-of-file on communication channel' when you try to run it.
    Is it not possible to use a database link with a dynamic SQL? What can I do to overcome the problem ?

    Try to create a local view based ao the remote table and use the view.

  • Creation of database link from oracle to sql server 2000

    Hi
    I need to create a database link from oracle to sql server 2000.

    Assuming your Oracle database is running on Windows, you can set up a database link using ODBC using Heterogeneous Services and Generic Connectivity, but there are some functional limitations (i.e. no two-phase commits). If you can live with those limitations but aren't on Windows, you can generally purchase an ODBC driver for your operating system that will connect to SQL Server through someone like DataDirect and still use Generic Connectivity. If you cannot live with those limitations, you can purchase one of Oracle's Transparent Gateway products (though this can get somewhat pricey).
    What version of Oracle are you on?
    What operating system(s) are you using?
    What are you going to use the database link for?
    Justin

  • Creating Database Link from Oracle to SQL Server

    I am trying to create a database link from Oracle to SQL Server, and the documentation is about as clear as mud to me. Can anyone send me clear instructions on exactly what I need to do? What needs to be in tnsnames.ora and listener.ora files? Is there anything other than those two files that needs to be set up? Do I set up an ODBC connection? Anything else? I want to execute queries against a SQL Server database and load data into Oracle database.
    Thanks so much,
    Susan

    These are the instructions from an old document I created. The steps are same for SQL Server and Sybase. Hope it helps.
    The 9i Transparent Gateway Software is in Oracle Software CD -> oracle9i database -> Custom -> Oracle Transparent Gateways
    The gateway can be installed on the same machine as the Oracle database or
    on the Sybase server or on a third machine as a stand-alone.
    We have installed the gateway software in one of oracle database
    servers in a separate oracle home.
    These are the steps involved in configuring a gateway to a Sybase database
    1.     Install Sybase client and Gateway software on the Gateway Server
    2.     Configure <initsidfile> in the Gateway Server's <gatewayhome>
         /u00/app/oracle/product/9.2.0/tg4sybs/admin/init<gatewaysid>.ora
    Sybase server and database information is required for this step.
    eg: HS_FDS_CONNECT_INFO=USTRUD01.uwd
    3.     Add an entry in listener.ora in <listnenerhome>
         (/u00/app/oracle/product/9.0.1/network/admin/listener.ora) for the <gatewaysid>
    4.     Edit the tnsnames file (/u00/app/oracle/product/9.0.1/network/admin/tnsnames.ora)
    to add an entry <tnsalias> for the <gatewaysid>
    5.     Create a database link to the Sybase database in the oracle database.
    The steps for creating the database link are
    a. create a login oracle_tgw in the sybase server
    b. add the user to the sybase database with the necessary privilege on the tables
    c. create the database link in the required oracle database using the command
         "create public database link <dblinkname> connect to oracle_tgw identified by password using 'tnsalias'; "
    6.     Restart the gateway listener.

  • How to create database link between oracle and SQL Server

    Hello Everyone,
    Here i have Oracle Database 9i and SQL Server 2005 databases.
    I have some tables in sql server db and i want to access from Oracle.
    How to create a database link between these two servers
    Thanks,

    Thanks for Everyone,
    I was struggle with this almost 10 days....
    I created Database link from Oracle to SQL Server
    Now it is fine.........
    Here i am giving my servers configuration and proceedure how i created the db link...@
    Using Generic Connectivity (HSODBC) we can create db link between Oracle and SQL server.
    Machine (1)
    DB Version : Oracle 9.2.0.7.0
    Operating System : HP-UX Itanuim 64 11.23
    IP : 192.168.0.31
    Host : abcdbt
    Machine (2)
    Version : SQL Server 2005
    Operating System : Windows server 2003 x86
    IP : 192.168.0.175
    Host : SQLDEV1
    User/PW : sa/abc@123! (Connect to database)
    Database : SQLTEST (exsisting)
    Table : T (“ T “ is the table existing in SQLTEST database with 10 rows)
    Prerequisites in Machine (2):
    a)     Oracle 10g software
    b)     User account to access SQL Server database (sa/abc@123!)
    c)     Existing SQL Server Database (SQLTEST)
    d) Tables (testing purpose) (T)
    Steps:
    1)     Install Oracle 10.2.0.1 (Only SW,No need of database) *(Machine 2)*
    2)     Create a DSN where your windows Oracle 10g SW resides *(Machine 2)*
    Control panel >> Administrative Tools >> Data Source (ODBC) >> System DSN ADD
    You can follow this link also.....
    http://www.databasejournal.com/features/oracle/article.php/3442661/Making-a-Connection-from-Oracle-to-SQL-Server.htm
    I created DSN as
    DSN name : SQLTEST
    User : SA/abc@123! (Existing user account)
    Host : 192.168.0.175 (machine 2)
    Already I have 1 database in SQL Server with the name SQLTEST
    You can create DSN with different name also (not same as db name also)
    3)     Create a hsodbc init file in $ORACLE_HOME\hs\admin *(Machine 2)*
    Create init<DSN NAME> file
    Ex: initSQLTEST
    Copy inithsodbc to initSQLTEST
    And edit
    initSQLTEST file
    HS_FDS_CONNECT_INFO = SQLTEST    <DSN NAME>*
    HS_FDS_TRACE_LEVEL = OFF*
    save the file....@
    4)     Configure Listener.ora *(Machine 2)*
    LISTENER_NEW =
    (DESCRIPTION_LIST =
    (DESCRIPTION =
    (ADDRESS_LIST =
    (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.175)(PORT = 1525))
    SID_LIST_LISTENER_NEW =
    (SID_LIST =
    (SID_DESC =
    (SID_NAME = SQLTEST) *+< Here SQLTEST is DSN NAME >+*
    (ORACLE_HOME = G:\oracle 10g\oracle\product\10.2.0\db_1)
    (PROGRAM = hsodbc))
    (SID_DESC =
    (SID_NAME = PLSExtProc)
    (ORACLE_HOME = G:\oracle 10g\oracle\product\10.2.0\db_1)
    (PROGRAM = extproc) )
    :> lsnrctl start LISTENER_NEW
    5)     Configure tnsname.ora *(Machine 2)*
    SQLTEST11 =
    (DESCRIPTION =
    (ADDRESS_LIST =
    (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.175)(PORT = 1525))
    (CONNECT_DATA =
    (SERVER = DEDICATED)
    (SERVICE_NAME = SQLTEST))
    (HS=OK)
    :> tnsping SQLTEST11
    If No errors then conti….
    6)     Configure a file *(Machine 1)*
    Cd $TNS_ADMIN ($ORACLE_HOME/network/admin)
    Create a file
    $ vi TEST_abcdbt_ifile.ora
    something=
    (DESCRIPTION=
    (ADDRESS=(PROTOCOL=tcp)(HOST =192.168.0.175) (PORT=1525))
    (CONNECT_DATA=
    (SID=SQLTEST))
    (HS=OK)
    $ tnsping something
    $ sqlplus system/manager
    Your connected to Oracle database *(machine 1)*
    create database link xyz connect to “sa” identified by “abc@123!” using ‘SOMETHING’;
    select * from t@xyz;10 rows selected.
    Thanks,
    Edited by: ram5424 on Feb 10, 2010 7:24 PM

  • How to create database link from oracle to sql server

    Please help with how to create database link from oracle to sql server
    Best regards,
    Vishal

    Please help with how to create database link from oracle to sql server
    Best regards,
    Vishal
    Hi Vishal,
    I found a lof of information regarding how to create a database link from Oracle to SQL Server, please see:
    https://www.google.co.in/?gws_rd=cr&ei=vd3XUvGFO8TgkAXqlYCADg#q=how+to+create+database+link+from+oracle+to+sql+server
    We discuss SQL Server related issue in this forum. If you have any more question regarding Oracle, please post it in Oracle communities forum for better support.
    Regards,
    Elvis Long
    TechNet Community Support

  • Database link with the alias and full description in the connect string

    Hi,
    i have created database link with alias in tnsentry and full description
    and suppose i have removed the tnsnames.ora file what will be the impact on the database link that is whether database link will work or not i am sure db link created with alias won't work and how about db link created with full description and which one you prefer
    Thanks

    # Parameter file initora for Database prd
    ### Global database name is db_name.db_domain
    global_names = TRUE
    db_name = prd
    db_domain = world
    # TNSNAMES.ORA for prd ###############################
    prd.world = (DESCRIPTION = (ADDRESS = (COMMUNITY = tcp.world)
    (PROTOCOL = TCP) (Host = 100.10.100.1) (Port = 1521))
    (CONNECT_DATA = (SID = prd) (GLOBAL_NAME = prd.world)
    (SERVER = DEDICATED)))
    Our database link points from the local database test to the remote database prd. Therefore we need the global database name for prd. Ask the remote database administrator for these information or connect to prd and execute the following query on prd:
    SQL> select GLOBAL_NAME from GLOBAL_NAME;
    GLOBAL_NAME
    prd.WORLD
    CREATE DATABASE LINK prd
    CONNECT TO system IDENTIFIED BY system_passwd
    USING 'prd';--- alias
    so the connection description will be ---select ename from [email protected]
    useful link
    http://www.akadia.com/services/ora_dblinks.html

  • Database link between oracle and sql server

    dear all,
    i m a newbie to oracle and i need your help to know how to create a database link between oracle and sql server.my oracle version 10.2.0.3 and platform is redhat linux 5.7.your help appreciated.
    thanks in advance.

    [oracle@localhost ~]$ rpm -qa | grep -i odbc
    php-odbc-4.3.9-3.15
    unixODBC-kde-2.2.11-1.RHEL4.1
    MyODBC-2.50.39-21.RHEL4.1
    postgresql-odbc-7.3-8.RHEL4.1
    freeradius-unixODBC-1.0.1-3.RHEL4.3
    qt-ODBC-3.3.3-9.3
    unixODBC-devel-2.2.11-1.RHEL4.1
    unixODBC-2.2.11-1.RHEL4.1
    is this showing odbc installed in os?

  • Database link with current_user

    I'm logged on database EMSDB.D710.DE and created a database link to EMSDB.D999.DE with current_user(...same user, same credentials I'm logged in). When I tried to use that created link I get the errorcode:"ORA-01017: Benutzername/Kennwort ungültig; Anmeldung abgelehnt". What I don't understand is, why I can connect to EMSDB.D999.DE --- but not access to the same database with a database link???
    SELECT     'EMSDB.D999.DE'               REMOTE_DB   --NAME OF DATABASE 
    FROM DUAL;
    VARIABLE VAR_REMOTE_DB VARCHAR2(15);
    BEGIN
        :VAR_REMOTE_DB := '&REMOTE_DB';
    END;
    SELECT  :VAR_REMOTE_DB                REMOTE_DB    
    FROM DUAL;
    CREATE DATABASE LINK &REMOTE_DB CONNECT TO CURRENT_USER USING '&REMOTE_DB' ;
    SELECT TABLE_NAME FROM ALL_TABLES@&REMOTE_DB;output
    SQL> @test
    REMOTE_DB
    EMSDB.D999.DE
    REMOTE_DB
    EMSDB.D999.DE
    SELECT TABLE_NAME FROM [email protected]
    FEHLER in Zeile 1:
    ORA-01017: Benutzername/Kennwort ungültig; Anmeldung abgelehnt
    SQL>Edited by: user5116754 on 22.02.2011 04:33

    user5116754 wrote:
    Thank you, John...but should it be possible for me to create this database link then???
    As I said, if you are not a global user according to Oracle, you would need to create a database link supplying the username and password of the user at the remote database that you want to use. Something like:
    CREATE DATABASE LINK EMSDB.D999.DE
    CONNECT TO username IDENTIFIED BY password
    USING 'EMSDB.D999.DE';
    How to spy out, what kind of user (GLOBAL...) I am?Log into the local database and do:
    SELECT external_name
    FROM user_uses;If that return null, then you are not a global user, if it returns a value, you are a global user in that database. Log into the remote database (whatever is identified by emsdb.d999.de) and do the same thing. If the external names on both databases are not null and have the same value, then you are a global user on both databases, and the current_user should work, otherwise you are ethe not a global user on one or both databases, or you are a different global user on the two databases.
    John

  • Database Link with 11g R2 and Teradata

    Trying to create a database link from Oracle to a Teradata database using Oracle Database Gateway, and I'm receiving ORA-12154: TNS:could not resolve the connect identifier specified...
    I'm pretty new at this and my head is spinning a bit.  After following the gateway configuration instructions it seems there are 3 sets of tnsnames.ora/listener.ora/sqlnet.ora files
    1) on the database server
    2) on my local computer where oracle is installed
    3) on my local computer where the gateway is installed
    Is this how it should be?  Which set should I be working with to resolve this error?  Any other advice for this newbie would be amazing!  Let me know what other information I can share to help describe the issue.  I've tried so many things at this point, I'm not really sure what's relevant and what's not anymore.

    Ok, got it.  I was not in the command prompt as an administrator for my first couple attempts.  Results are below.  I have been replacing host names with italicized descriptions because this is my first time posting on a forum and I'm not sure that my employer would be okay with me posting those specifics.  Let me know if this is hindering the troubleshooting process.
    STATUS of the LISTENER
    Alias                     LISTENER
    Version                   TNSLSNR for 32-bit Windows: Version 11.2.0.1.0 - Produ
    ction
    Start Date                18-JUN-2014 10:01:08
    Uptime                    0 days 0 hr. 0 min. 5 sec
    Trace Level               off
    Security                  ON: Local OS Authentication
    SNMP                      OFF
    Listener Parameter File   C:\product\11.2.0\tg_1\network\admin\listener.ora
    Listener Log File         c:\product\11.2.0\tg_1\log\diag\tnslsnr\COQC2DPRDMGT00
    1\listener\alert\log.xml
    Listening Endpoints Summary...
      (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=local computer where gateway is installed)(P
    ORT=1521)))
    Services Summary...
    Service "dg4tera" has 1 instance(s).
      Instance "dg4tera", status UNKNOWN, has 1 handler(s) for this service...
    The command completed successfully
    C:\WINDOWS\system32>
    C:\WINDOWS\system32>tnsping dg4tera
    TNS Ping Utility for 32-bit Windows: Version 11.2.0.1.0 - Production on 18-JUN-2
    014 10:02:03
    Copyright (c) 1997, 2010, Oracle.  All rights reserved.
    Used parameter files:
    C:\oracle\product\11.2.0\client_1\network\admin\sqlnet.ora
    Used TNSNAMES adapter to resolve the alias
    Attempting to contact (DESCRIPTION= (ADDRESS= (PROTOCOL=TCP) (HOST=local computer where gateway is installed) (PORT=1521)) (CONNECT_DATA= (SID=dg4tera)) (HS=OK))
    OK (10 msec)
    C:\WINDOWS\system32>
    C:\WINDOWS\system32>

  • Stored procedure with database link with "from table(...)"

    Hi guys,
    I've been told I can't create views on a database by the design team and so have to use this stored procedure to obtain the values.
    select HAN_ID, HAN_DS, GLOBAL_IN, LOCAL_IN
    from table(cast(ODADMIN.ODP00002_QUERY.Execute001@DBLINK(11312,'EN') as
    ODADMIN.ODP00002_001_Array@DBLINK)) WHERE LOCAL_IN = 'Y';I've been told that it works when you remove the database links (so on the actual database) when you remove the cast part. I've tried it with my link and with/without the cast part but it doesn't work. With the example above I get the error: ORA-00907: missing right parenthesis.
    When I remove the CAST-AS and the additional parenthesis it brings i get the error: ORA-00904: "ODADMIN"."ODP00002_QUERY"."EXECUTE001": invalid identifier
    When I do table( *"* ODADMIN.ODP00002_QUERY.Execute001@MWW_DEV(11312,'EN') *"* )... -- wrapping the call in speech marks I get: ORA-00972: identifier is too long
    Anyone see what's wrong? Thanks for any help.
    Mike

    Hi Ben,
    Asking now. By a view I mean one local to the database; I could create one on APEX but then I use the database link twice instead of just 1.
    His reasoning Ben:
    Firstly, Maintenance. We will have to maintain additional views (at additional code). Secondly, if the view has a JOIN, then you can't update through it (without complexities). If we have to get the View to pass the data to a Procedure (that's a pain). Also, standards..
    All update occur via either a Procedure, or a Base view, across over 1000 tables
    That's the standard, and doing things differently is costly long term
    People will not know how it works, it will have to be explained, maintained..etc.
    If the Application has the Business Rules, then updates via Base Views, that's a more standard way of developing. Also, if you update via this view, you'll update multiple rows in one call, which is in-effficient if only ONE row needs to change. Therefore, single row updates from the Application is more efficient
    The procedure is as follows:
    --SET SERVEROUTPUT ON
    DECLARE
    nPBusLoc       NUMBER(5):=11312;
    sPHanId        VARCHAR2(3):='SB1';
    sPLngId        VARCHAR2(2):='EN';
    sPDesc         VARCHAR2(30);
    sPAllowAlloc   VARCHAR2(1);
    sPShowEnq      VARCHAR2(1);
    sPAllowDel     VARCHAR2(1);
    sPShowScan     VARCHAR2(1);
    sPGlobalLocal  VARCHAR2(1);
    sPReturnCd     VARCHAR2(2);
    sPReturnTx     VARCHAR2(100);                  
    BEGIN
    ODADMIN.ODP00001.getHandlingCodes
                           (nPBusLoc    --  IN   NUMBER
                          ,sPHanId      -- IN   VARCHAR2
                          ,sPLngId      -- IN   VARCHAR2
                          ,sPDesc       -- OUT  VARCHAR2
                          ,sPAllowAlloc -- OUT  VARCHAR2
                          ,sPShowEnq    -- OUT  VARCHAR2
                          ,sPAllowDel   -- OUT  VARCHAR2
                          ,sPShowScan   -- OUT  VARCHAR2
                          ,sPGlobalLocal-- OUT  VARCHAR2
                          ,sPReturnCd   -- OUT  VARCHAR2
                          ,sPReturnTx   -- OUT  VARCHAR2                                    
    DBMS_OUTPUT.PUT_LINE('nPBusLoc                 = '||nPBusLoc              );
    DBMS_OUTPUT.PUT_LINE('sPHanId                  = '||sPHanId               );
    DBMS_OUTPUT.PUT_LINE('sPLngId                  = '||sPLngId               );
    DBMS_OUTPUT.PUT_LINE('sPDesc                   = '||sPDesc                );
    DBMS_OUTPUT.PUT_LINE('sPAllowAlloc             = '||sPAllowAlloc          );
    DBMS_OUTPUT.PUT_LINE('sPShowEnq                = '||sPShowEnq             );
    DBMS_OUTPUT.PUT_LINE('sPAllowDel               = '||sPAllowDel            );
    DBMS_OUTPUT.PUT_LINE('sPShowScan               = '||sPShowScan            );
    DBMS_OUTPUT.PUT_LINE('sPGlobalLocal            = '||sPGlobalLocal         );
    DBMS_OUTPUT.PUT_LINE('sPReturnCd               = '||sPReturnCd            );
    DBMS_OUTPUT.PUT_LINE('sPReturnTx               = '||sPReturnTx            );
    END;
    /Mike
    Edited by: Dird on 27-Aug-2009 01:50

  • Slow Query over Database Link with Bind Variable

    I have a query over a DB link, with all tables on the remote database.
    If I use a bind variable (from Toad), the query takes 4 minutes. If I replace the bind variable with a constant or substitution variable, it takes 1 second.
    The query runs fine when run directly on the remote database using bind variable.
    9.2.0.7

    Look up "Bind variable peeking"
    What's happened is you have an execution plan that differs from the one with the constant. Why? My bet is that Oracle "peeked" at the bind variable to help it decide which execution plan to build. It then cached it. It probably cached an execution with an index when it should be doing a full table scan or a hash join instead of a nested loop. It's hard to say specifically what it is.
    Try this, flush your shared pool and rerun the query with the bind and let us know if it takes 1 second or 4 minutes. If it takes 1 second, then that was probably it.
    Read part 2 of Tom Kyte's blog post on what it is and it's behavior.
    http://tkyte.blogspot.com/2007/09/sqltracetrue-part-two.html

  • Multibyte issue in database link with sql server

    Hi Gurus,
    Greetings!!!
    I need to transfer data from Microsoft SQL Server 2005 to Oracle DAtabase 10g(AL32UTF8 characterset). I achieved it using Heterogeneous Connectivity. I can now issue queries but unfortunately i got an issue in displaying multibyte characters. I thought of using another Tool that can display multibyte data but it did not help. I even tried setting the initialization parameter HS_LANGUAGE to different characterset but still not able to display. Kindly help and advise how to resolve the said issue.
    Many Thanks in Advance,
    Benjie

    What is the exact issue you're talking about?
    Can you explain it or show us a sort of it with a sample output?
    MS SQL Server is not our daily bread so we may not know how it works with Oracle and what problems are there in their interconnectivity, but we may tell you what may be the reason of a behavior that causes the issues for your purpose.
    Bye Alessandro

  • Creating Database link from Oracle9i to SQL server 2000

    Pls how do I create connectivity from Oracle9i database to query a table in an SQL server 2000 database.
    Pls I need the necessary steps to take.
    Thanx

    There are 2 solutions that you can use:
    1) Transparent Gateway for SQL Server
    2) Generic Connectivity
    Generic Connectivity is free with the database but has less features than the Gateway. For Generic Connectivity you will need to obtain an ODBC driver.
    The steps for using the gateway are available in the gateway manual and the steps for using Generic Connectivity is available in Chap 7 of the Heterogeneous Connectivity Administrator's Guide.

  • Database Link beetwen SAP e SQL SERVER

    Hi Gurus,
    i need to read a table in SQL server, from a WebDynpro abap.
    My OS is Unix not windows, how can i create a DBLINK to SQL server (for example es a Oracle system), is it possible?
    thanks a lot.
    Claudio.

    > i need to read a table in SQL server, from a WebDynpro abap.
    > My OS is Unix not windows, how can i create a DBLINK to SQL server (for example es a Oracle system), is it possible?
    To connect an ABAP system to another database the following is necessary:
    - a database client for the target database
    - a database interface library for the target database
    Since both are not existing on Unix for Microsoft SQL Server the only (supported) thing you can do is to install a Windows application server and execute the application there.
    Markus

Maybe you are looking for

  • Need help in Logic to Concat

    Hello everyone, This is the requirement, I have a table like this below : Actual table: Item_Seller item_id seller_name 12310450 Pro Team 12310450 CSNStores.com 12310451 CSNStores.com 12310452 CSNStores.com 12310452 Pro Team 12310453 Pro Team 1231069

  • Could not write value ManageLLRouting

    I encountered the error "could not write value ManageLLRouting to key \SYSTEM\CurrentControlSet\Services\Bonjour Service\Parameters. Verify that you have sufficient access to that key, or contact your support personnel.". I am already the adminstrato

  • 32GB itouch is zooming in at random times, need help!

    I just got an itouch for my birthday four days ago and was browsing and playing an application while the itouch was charging and randomly, it zoomed into the screen. I thought it was no big deal and when I tried to get it not to zoom, it wouldn't let

  • I have lost previously downloaded music during back-up.

    I am trying to find music that I have lost during previous back-ups with older versions of iTunes, I had backed up my library to my external hard drive. I know where they are and am unable to get my music back. I have tried opening them. I have tried

  • Problem installing oracle 817 Personal Edition in non-interactive mode

    When I install oracle 817 PE in silent mode, if there's a pre-8.1.6 version of Oracle already installed the Oracle Data Migration Assistant pops up. This is exactly what I don't want to happen. Is there a way to keep ODMA from launching? Thank you.