Oracle & Embedded SQL-C & ODBC

I would appreciate if someone could answer the following:
Q1. Does Oracle have and any product that will enable one to embed SQL in C? Something like SQLJ for Java. I am aware of the existence of OCI, but I'm looking for an alternative. If so, how is this product packated/sold. Does it ship with any s/w bundles as part of (OPP) Oracle Partner Program.
Q2. Does OCI ship with any s/w bundles as part of the OPP?
Q3. What existing mechanism in Oracle can be used by a client application to receive notification of changes in the DB? I'm not referring to triggers. I'm also aware of queues (can this be used?). Are there perhaps other features?
Q4. How is the ODBC driver packaged by Oracle? Does is come with OPP?
Thanks in advance.
//Prem

Just by installing Oacle Enterprize DB server on Unix, are we getting ODBC driver needed for client to access the database? Or should we still install Orcle client to get the driver?
Or like you mentioned somewhere there is no such concept as ODBC driver on Unix so we don't need install ODBC driver then if client sit on the same machine how you make it talk to the database?
Thanks if you can shed light on these issues.
Also where I can find ODBC driver upgrade on OTN.
Wilson
<BLOCKQUOTE><font size="1" face="Verdana, Arial">quote:</font><HR>Originally posted by Justin Cave ([email protected]):
Pro*C is an interface that generally lets you embed SQL in C code. I suspect that it's similiar to SQLJ, but I don't know for sure.
OCI, the ODBC driver, and Pro*C are all available whenever you've installed the Oracle client. Updated versions of the ODBC driver are available from OTN. Updates to OCI and Pro*C will ship with the various Oracle patchkits.
No idea on Q3.
Justin<HR></BLOCKQUOTE>
null

Similar Messages

  • Oracle 10gR2 64bit  odbc  from oracle to sql server  Win 2008 EE 64bits

    Hi, I am having trouble with a 10gR2 64bits creation of odbc from oracle to sql server, I have follow several instruction with no luck at all. My OS is windows 2008 EE 64bits on the oracle and sql server server.
    This is what I have done
    1. in the $oracle_home/hs/admin directory
    inithsodbc.ora
    # HS init parameters
    HS_FDS_CONNECT_INFO = hsodbc
    HS_FDS_TRACE_LEVEL = off
    2. in the $oracle_home/network/admin
    # listener.ora Network Configuration File: C:\oracle\product\10.2.0\db_1\network\admin\listener.ora
    # Generated by Oracle configuration tools.
    SID_LIST_LISTENER =
    (SID_LIST =
    (SID_DESC =
    (SID_NAME = PLSExtProc)
    (ORACLE_HOME = C:\oracle\product\10.2.0\db_1)
    (PROGRAM = extproc)
    (SID_DESC=
    (SID_NAME=hsodbc)
    (ORACLE_HOME=C:\oracle\product\10.2.0\db_1)
    (PROGRAM=C:\oracle\product\10.2.0\db_1\hs\hsodbc)
    LISTENER =
    (DESCRIPTION_LIST =
    (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = xx.xx.xx.xx)(PORT = 1521))
    (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC0))
    And the tnsname.ora
    # tnsnames.ora Network Configuration File: C:\oracle\product\10.2.0\db_1\network\admin\tnsnames.ora
    # Generated by Oracle configuration tools.
    PRUEBA =
    (DESCRIPTION =
    (ADDRESS_LIST =
    (ADDRESS = (PROTOCOL = TCP)(HOST = xx.xx.xx.xx)(PORT = 1521))
    (CONNECT_DATA =
    (SERVICE_NAME = prueba)
    hsodbc =
    (DESCRIPTION=
    (ADDRESS=(PROTOCOL=tcp)(HOST=xx.xx.xx.xx)(PORT=1521))
    (CONNECT_DATA=(SID=hsodbc))
    (HS=OK)
    I create the odbc connection an test it , the result is TEST PASSED
    4. The i create a database link on my database
    CREATE PUBLIC DATABASE LINK XYZ
    CONNECT TO "sysdba" IDENTIFIED BY "masterkey"
    USING 'hsodbc';
    5 execute a select
    SQL> select * from dual@XYZ;
    select * from dual@XYZ
    ERROR at line 1:
    ORA-28545: error diagnosed by Net8 when connecting to an agent
    Unable to retrieve text of NETWORK/NCR message 65535
    ORA-02063: preceding 2 lines from XYZ
    6. When I check the listener log i'm getting this error
    25-MAR-2011 11:48:40 * (CONNECT_DATA=(CID=(PROGRAM=)(HOST=)(USER=Administrator))(COMMAND=status)(ARGUMENTS=64)(SERVICE=LISTENER)(VERSION=169870592)) * status * 0
    25-MAR-2011 11:48:47 * (CONNECT_DATA=(SID=hsodbc)(CID=(PROGRAM=)(HOST=PRO)(USER=PRO\Administrator))) * (ADDRESS=(PROTOCOL=tcp)(HOST=xx.xx.xx.xx)(PORT=49329)) * establish * hsodbc * 12518
    TNS-12518: TNS:listener could not hand off client connection
    TNS-12560: TNS:protocol adapter error
    TNS-00530: Protocol adapter error
    Edited by: user626125 on Mar 26, 2011 11:39 AM
    Edited by: user626125 on Apr 12, 2011 2:49 PM

    Heterogeneous Connectivity

  • Embedded SQL against Oracle Question

    Software: Forte 3.0.J.
    Server Platform: HPUX 10.2
    Database: Oracle
    Problem Description: During the course of development, I ran into a
    problem using multiple columns in an sql UPDATE/SET statement. I was trying
    to update a.COLUMN_1 and a.COLUMN_2, which constitute part of the primary
    key of associative TABLE_A (a). In order for me to make the update, I
    needed to use the existing value of a.COLUMN_1 to lookup the new b.COLUMN_1
    in TABLE_B (b). Where a.COLUMN_1 = b.RELATED_COLUMN_1, I am able to find
    each b.COLUMN_2 that correspond to each a.COLUMN_2.
    I was able to resolve the issue by separating the two columns so
    that each had it's own select statement. Theoretically, it appears that
    this shouldn't work, because the SET statement for a.COLUMN_1 would cause
    the a.COLUMN_1 reference in the select statement of a.COLUMN_2 to be
    overwritten.
    In spite of this, I tried it, and it worked. I would like to
    understand why the sql works, and how sql actually executes the statement.
    Here is the sql:
    UPDATE TABLE_A a
    SET a.COLUMN_1 =
    (SELECT DISTINCT b1.COLUMN_1
    FROM TABLE_B b1
    WHERE b1.RELATED_CASE_ID =
    a.COLUMN_1 AND
    b1.RELATED_COLUMN_TYPE_CD = 'NEPHI'),
    a.COLUMN_2=
    (SELECT DISTINCT b2.COLUMN_2
    FROM TABLE_B b2
    WHERE b2.RELATED_COLUMN_1=
    a.COLUMN_1 AND
    b2.RELATED_COLUMN_TYPE_CD = 'NEPHI' AND
    b2.RELATED_COLUMN_2= a.COLUMN_2)
    WHERE a.COLUMN_1 = 100
    The table structure is as follows:
    TABLE_A: (primary keys are bolded) This is an associative table.
    Column_1 and Column_2 comprise the pk of one table; Column_3 and Column_4
    comprise the pk of another table. Assume that the Column_1 and Column_2
    values replacing the original values already exist in the parent table of
    which they form the pk).
    COLUMN_1
    COLUMN_2
    COLUMN_3
    COLUMN_4
    COLUMN_5
    TABLE_B: (primary keys are bolded) This is a reference table.
    COLUMN_1
    COLUMN_2
    RELATED_COLUMN_1
    RELATED_COLUMN_2
    RELATED_COLUMN_TYPE_CD
    To unsubscribe, email '[email protected]' with
    'unsubscribe forte-users' as the body of the message.
    Searchable thread archive <URL:http://pinehurst.sageit.com/listarchive/>

    If you do an explain plan or set autotrace on against this update statement,
    you'll find that the select operations are actually executed first by Oracle
    - I believe because of the nature of the transaction. Thus, no problem.
    Brian Wilson
    U.S. Bancorp Piper Jaffray
    [email protected]
    Phone (612) 342-5682
    From: David Pettit[SMTP:[email protected]]
    Reply To: David Pettit
    Sent: Friday, April 30, 1999 1:58 PM
    To: '[email protected]'
    Subject: Embedded SQL against Oracle Question
    Software: Forte 3.0.J.
    Server Platform: HPUX 10.2
    Database: Oracle
    Problem Description: During the course of development, I ran into a
    problem using multiple columns in an sql UPDATE/SET statement. I was
    trying
    to update a.COLUMN_1 and a.COLUMN_2, which constitute part of the primary
    key of associative TABLE_A (a). In order for me to make the update, I
    needed to use the existing value of a.COLUMN_1 to lookup the new
    b.COLUMN_1
    in TABLE_B (b). Where a.COLUMN_1 = b.RELATED_COLUMN_1, I am able to find
    each b.COLUMN_2 that correspond to each a.COLUMN_2.
    I was able to resolve the issue by separating the two columns so
    that each had it's own select statement. Theoretically, it appears that
    this shouldn't work, because the SET statement for a.COLUMN_1 would cause
    the a.COLUMN_1 reference in the select statement of a.COLUMN_2 to be
    overwritten.
    In spite of this, I tried it, and it worked. I would like to
    understand why the sql works, and how sql actually executes the statement.
    Here is the sql:
    UPDATE TABLE_A a
    SET a.COLUMN_1 =
    (SELECT DISTINCT b1.COLUMN_1
    FROM TABLE_B b1
    WHERE b1.RELATED_CASE_ID =
    a.COLUMN_1 AND
    b1.RELATED_COLUMN_TYPE_CD = 'NEPHI'),
    a.COLUMN_2=
    (SELECT DISTINCT b2.COLUMN_2
    FROM TABLE_B b2
    WHERE b2.RELATED_COLUMN_1=
    a.COLUMN_1 AND
    b2.RELATED_COLUMN_TYPE_CD = 'NEPHI' AND
    b2.RELATED_COLUMN_2= a.COLUMN_2)
    WHERE a.COLUMN_1 = 100
    The table structure is as follows:
    TABLE_A: (primary keys are bolded) This is an associative table.
    Column_1 and Column_2 comprise the pk of one table; Column_3 and Column_4
    comprise the pk of another table. Assume that the Column_1 and Column_2
    values replacing the original values already exist in the parent table of
    which they form the pk).
    COLUMN_1
    COLUMN_2
    COLUMN_3
    COLUMN_4
    COLUMN_5
    TABLE_B: (primary keys are bolded) This is a reference table.
    COLUMN_1
    COLUMN_2
    RELATED_COLUMN_1
    RELATED_COLUMN_2
    RELATED_COLUMN_TYPE_CD
    To unsubscribe, email '[email protected]' with
    'unsubscribe forte-users' as the body of the message.
    Searchable thread archive <URL:http://pinehurst.sageit.com/listarchive/>
    Nondeposit investment products are not insured by the FDIC, are
    not deposits or other obligations of or guaranteed by U.S. Bank
    National Association or its affiliates, and involve investment
    risks, including possible loss of the principal amount invested.
    Past performance does not guarantee future results. We consider
    our sources reliable. Accuracy and completeness are not guaranteed.
    Information is subject to change. Transactional details should not
    be relied on for tax purposes and do not supersede normal trade
    confirmations or statements. Messaging outside U.S. jurisdictions
    from U.S. Bancorp Piper Jaffray to non-institutional parties is not
    intended for solicitation purposes.
    Electronic mail sent through the Internet is not secure. We will
    not accept time-sensitive, action-oriented messages, transaction
    orders, fund transfer instructions or check stop payments
    electronically.
    If you are not the intended recipient, notify the Sender. This
    information is intended only for the person named above and for
    the purposes indicated. Do not distribute this message without
    written consent of the author. Non-business opinions may not
    reflect opinions of U.S. Bancorp Piper Jaffray and its affiliates.
    U.S. Bancorp Piper Jaffray and its affiliates reserve the right to
    monitor all e-mail.
    Securities products and services are offered through
    U.S. Bancorp Piper Jaffray Inc., member SIPC and NYSE, Inc.,
    a subsidiary of U.S. Bancorp.
    To unsubscribe, email '[email protected]' with
    'unsubscribe forte-users' as the body of the message.
    Searchable thread archive <URL:http://pinehurst.sageit.com/listarchive/>

  • Connecting Oracle to MS SqlServer using Microsoft SQL Server ODBC Driver

    Hello,
    I have just downloaded the newly released Microsoft® SQL Server® ODBC Driver for Linux and trying to configure it to connect to SqlServer Database from Oracle using DG4ODBC
    Below are my config files:
    # odbcinst -j
    unixODBC 2.3.1
    DRIVERS............: /etc/odbcinst.ini
    SYSTEM DATA SOURCES: /etc/odbc.ini
    FILE DATA SOURCES..: /etc/ODBCDataSources
    USER DATA SOURCES..: /usr/oracle/.odbc.ini
    SQLULEN Size.......: 8
    SQLLEN Size........: 8
    SQLSETPOSIROW Size.: 8
    cat /etc/odbcinst.ini
    [SQL Server Native Client 11.0]
    Description = Microsoft SQL Server ODBC Driver V1.0 for Linux
    Driver = /opt/microsoft/sqlncli/lib64/libsqlncli-11.0.so.1720.0
    #UsageCount = 1
    Fileusage = 1
    Dontdlclose = 1
    [ODBC]
    Trace = ON
    Tracefile = /tmp/mstestodbc.log
    cat /usr/oracle/.odbc.ini
    [DEFAULT]
    Driver = SQL Server Native Client 11.0
    [MSTEST]
    Driver = SQL Server Native Client 11.0
    Description = Microsoft SQL Server ODBC Driver V1.0 for Linux
    Servername = ret2axxx
    Database = testdb
    Port = xxxx
    And when I am trying to do an ODBC test using isql I am getting the below error.
    # iusql -v MSTEST username password
    [unixODBC][Driver Manager]Driver's SQLAllocHandle on SQL_HANDLE_DBC failed
    [ISQL]ERROR: Could not SQLDriverConnect
    Any help is much appreciated!!
    Thanks,
    Steve.

    Thanks Kgronau for your response.
    I have made changes to the ODBC.ini file still getting the same error
    [MSTEST]
    Driver = /opt/microsoft/sqlncli/lib64/libsqlncli-11.0.so.1720.0
    #Driver = SQL Server Native Client 11.0
    Description = Microsoft SQL Server ODBC Driver V1.0 for Linux
    #Address = ret2axxx
    Server = ret2axxx, <port>
    Database = testdb
    and when I am trying to export odbcinst.ini export ODBCINSTINI=/etc/odbcinst.ini
    in odbcinst -j output it shows the wrong information.
    :~ $ odbcinst -j
    unixODBC 2.3.1
    DRIVERS............: /etc//etc/odbcinst.ini
    SYSTEM DATA SOURCES: /etc/odbc.ini
    FILE DATA SOURCES..: /etc/ODBCDataSources
    USER DATA SOURCES..: /usr/oracle/.odbc.ini
    SQLULEN Size.......: 8
    SQLLEN Size........: 8
    SQLSETPOSIROW Size.: 8
    And when export odbcinst.ini as export ODBCINSTINI=odbcinst.ini it shows the correct path.
    :~ $ odbcinst -j
    unixODBC 2.3.1
    DRIVERS............: /etc/odbcinst.ini
    isql -v mstest username password
    [IM005][unixODBC][Driver Manager]Driver's SQLAllocHandle on SQL_HANDLE_DBC failed
    [ISQL]ERROR: Could not SQLConnect
    Thanks,
    Steve.

  • Error in connecting SQL Server ODBC connection to Oracle 8i

    I am tried connecting Oracle 8i on Windows2000 to SQL Server on Windowns2000 using ODBC. Sitting on Oracle server, in datasource(ODBC) when i give SQL servername and userid and password and click next, it gives error:
    connection failed
    SQL Server Error:1326
    ODBC SQL Server driver(Namespipe)
    client unable to establish connection
    can anyone help urgently?

    <BLOCKQUOTE><font size="1" face="Verdana, Arial, Helvetica">quote:</font><HR>Originally posted by sanjayp patel ([email protected]):
    I tried connecting Oracle 8i on Windows2000 to SQL Server on Windowns2000 using ODBC. Sitting on Oracle server, in datasource(ODBC) when i give SQL servername and userid and password and click next, it gives error:
    connection failed
    SQL Server Error:1326
    ODBC SQL Server driver(Namespipe)
    client unable to establish connection
    can anyone help urgently?<HR></BLOCKQUOTE>
    null

  • Oracle TO MSSQLServer vi ODBC Hangs

    Hi everyone:
    I'm trying to connect from an Oracle 11.2.0.3 on Solaris 10 (64 bit SPARC) to a MS SQL server 2000 using openlink odbc drivers 6.1 for SQL Server.
    We can do a tnsping to the remore database and it works, but when we try to query any table from SQL Server connections hangs always in the same step.
    Oracle Corporation --- MONDAY NOV 26 2012 11:20:26.750
    Heterogeneous Agent Release
    11.2.0.2.0
    Oracle Corporation --- MONDAY NOV 26 2012 11:20:26.749
    Version 11.2.0.2.0
    Entered hgogprd
    HOSGIP for "HS_FDS_TRACE_LEVEL" returned "DEBUG"
    Entered hgosdip
    setting HS_OPEN_CURSORS to default of 50
    setting HS_FDS_RECOVERY_ACCOUNT to default of "RECOVER"
    setting HS_FDS_RECOVERY_PWD to default value
    setting HS_FDS_TRANSACTION_LOG to default of HS_TRANSACTION_LOG
    setting HS_IDLE_TIMEOUT to default of 0
    setting HS_FDS_TRANSACTION_ISOLATION to default of "READ_COMMITTED"
    setting HS_NLS_NCHAR to default of "AL32UTF8"
    setting HS_FDS_TIMESTAMP_MAPPING to default of "DATE"
    setting HS_FDS_DATE_MAPPING to default of "DATE"
    setting HS_RPC_FETCH_REBLOCKING to default of "ON"
    HOSGIP returned value of "1" for HS_FDS_FETCH_ROWS
    setting HS_FDS_RESULTSET_SUPPORT to default of "FALSE"
    setting HS_FDS_RSET_RETURN_ROWCOUNT to default of "FALSE"
    setting HS_FDS_PROC_IS_FUNC to default of "FALSE"
    setting HS_FDS_MAP_NCHAR to default of "TRUE"
    setting HS_NLS_DATE_FORMAT to default of "YYYY-MM-DD HH24:MI:SS"
    setting HS_FDS_REPORT_REAL_AS_DOUBLE to default of "FALSE"
    setting HS_LONG_PIECE_TRANSFER_SIZE to default of "65536"
    setting HS_SQL_HANDLE_STMT_REUSE to default of "FALSE"
    setting HS_FDS_QUERY_DRIVER to default of "TRUE"
    HOSGIP returned value of "FALSE" for HS_FDS_SUPPORT_STATISTICS
    Parameter HS_FDS_QUOTE_IDENTIFIER is not set
    setting HS_KEEP_REMOTE_COLUMN_SIZE to default of "OFF"
    setting HS_FDS_GRAPHIC_TO_MBCS to default of "FALSE"
    setting HS_FDS_MBCS_TO_GRAPHIC to default of "FALSE"
    Default value of 64 assumed for HS_FDS_SQLLEN_INTERPRETATION
    setting HS_CALL_NAME_ISP to "gtw$:SQLTables;gtw$:SQLColumns;gtw$:SQLPrimaryKeys;gtw$:SQLForeignKeys;gtw$:SQLProcedures;gtw$:SQLStatistics;gtw$:SQLGetInfo"
    setting HS_FDS_DELAYED_OPEN to default of "TRUE"
    setting HS_FDS_WORKAROUNDS to default of "0"
    Exiting hgosdip, rc=0
    ORACLE_SID is "CardHolders"
    Product-Info:
    Port Rls/Upd:2/0 PrdStat:0
    Agent:Oracle Database Gateway for ODBC
    Facility:hsa
    Class:ODBC, ClassVsn:11.2.0.2.0_0008, Instance:CardHolders
    Exiting hgogprd, rc=0
    Entered hgoinit
    HOCXU_COMP_CSET=1
    HOCXU_DRV_CSET=31
    HOCXU_DRV_NCHAR=873
    HOCXU_DB_CSET=873
    HS_LANGUAGE is AMERICAN_AMERICA.WE8ISO8859P1
    rc=2147476520 attempting to get LANG environment variable.
    HOCXU_SEM_VER=112000
    Entered hgolofn at 2012/11/26-11:20:26
    HOSGIP for "HS_FDS_SHAREABLE_NAME" returned "/apex01/oraapex/ODBC_64/lib/sql_mt_lt.so"
    Entered hgolofns at 2012/11/26-11:20:26
    symbol_peflctx=0x7a170e68
    hoaerr:0
    Exiting hgolofns at 2012/11/26-11:20:26
    Entered hgolofns at 2012/11/26-11:20:26
    symbol_peflctx=0x7a1724b0
    hoaerr:0
    Exiting hgolofns at 2012/11/26-11:20:26
    Entered hgolofns at 2012/11/26-11:20:26
    symbol_peflctx=0x7a18db90
    hoaerr:0
    Exiting hgolofns at 2012/11/26-11:20:26
    Entered hgolofns at 2012/11/26-11:20:26
    symbol_peflctx=0x7a172520
    hoaerr:0
    Exiting hgolofns at 2012/11/26-11:20:26
    Entered hgolofns at 2012/11/26-11:20:26
    symbol_peflctx=0x7a18dce0
    hoaerr:0
    Exiting hgolofns at 2012/11/26-11:20:26
    Entered hgolofns at 2012/11/26-11:20:26
    symbol_peflctx=0x7a17dca0
    hoaerr:0
    Exiting hgolofns at 2012/11/26-11:20:26
    Entered hgolofns at 2012/11/26-11:20:26
    symbol_peflctx=0x7a191240
    hoaerr:0
    Exiting hgolofns at 2012/11/26-11:20:26
    Entered hgolofns at 2012/11/26-11:20:26
    symbol_peflctx=0x7a182600
    hoaerr:0
    Exiting hgolofns at 2012/11/26-11:20:26
    Entered hgolofns at 2012/11/26-11:20:26
    symbol_peflctx=0x7a182cc0
    hoaerr:0
    Exiting hgolofns at 2012/11/26-11:20:26
    Entered hgolofns at 2012/11/26-11:20:26
    symbol_peflctx=0x7a183270
    hoaerr:0
    Exiting hgolofns at 2012/11/26-11:20:26
    Entered hgolofns at 2012/11/26-11:20:26
    symbol_peflctx=0x7a183988
    hoaerr:0
    Exiting hgolofns at 2012/11/26-11:20:26
    Entered hgolofns at 2012/11/26-11:20:26
    symbol_peflctx=0x7a182d10
    hoaerr:0
    Exiting hgolofns at 2012/11/26-11:20:26
    Entered hgolofns at 2012/11/26-11:20:26
    symbol_peflctx=0x7a17e190
    hoaerr:0
    Exiting hgolofns at 2012/11/26-11:20:26
    Entered hgolofns at 2012/11/26-11:20:26
    symbol_peflctx=0x7a184ec8
    hoaerr:0
    Exiting hgolofns at 2012/11/26-11:20:26
    Entered hgolofns at 2012/11/26-11:20:26
    symbol_peflctx=0x7a1876d8
    hoaerr:0
    Exiting hgolofns at 2012/11/26-11:20:26
    Entered hgolofns at 2012/11/26-11:20:26
    symbol_peflctx=0x7a187928
    hoaerr:0
    Exiting hgolofns at 2012/11/26-11:20:26
    Entered hgolofns at 2012/11/26-11:20:26
    symbol_peflctx=0x7a18dc30
    hoaerr:0
    Exiting hgolofns at 2012/11/26-11:20:26
    Entered hgolofns at 2012/11/26-11:20:26
    symbol_peflctx=0x7a18dc88
    hoaerr:0
    Exiting hgolofns at 2012/11/26-11:20:26
    Entered hgolofns at 2012/11/26-11:20:26
    symbol_peflctx=0x7a1887a0
    hoaerr:0
    Exiting hgolofns at 2012/11/26-11:20:26
    Entered hgolofns at 2012/11/26-11:20:26
    symbol_peflctx=0x7a17e130
    hoaerr:0
    Exiting hgolofns at 2012/11/26-11:20:26
    Entered hgolofns at 2012/11/26-11:20:26
    symbol_peflctx=0x7a17dad8
    hoaerr:0
    Exiting hgolofns at 2012/11/26-11:20:26
    Entered hgolofns at 2012/11/26-11:20:26
    symbol_peflctx=0x7a173ba0
    hoaerr:0
    Exiting hgolofns at 2012/11/26-11:20:26
    Entered hgolofns at 2012/11/26-11:20:26
    symbol_peflctx=0x7a173ef0
    hoaerr:0
    Exiting hgolofns at 2012/11/26-11:20:26
    Entered hgolofns at 2012/11/26-11:20:26
    symbol_peflctx=0x7a174560
    hoaerr:0
    Exiting hgolofns at 2012/11/26-11:20:26
    Entered hgolofns at 2012/11/26-11:20:26
    symbol_peflctx=0x7a17dea0
    hoaerr:0
    Exiting hgolofns at 2012/11/26-11:20:26
    Entered hgolofns at 2012/11/26-11:20:26
    symbol_peflctx=0x7a156d60
    hoaerr:0
    Exiting hgolofns at 2012/11/26-11:20:26
    Entered hgolofns at 2012/11/26-11:20:26
    symbol_peflctx=0x7a17f070
    hoaerr:0
    Exiting hgolofns at 2012/11/26-11:20:26
    Entered hgolofns at 2012/11/26-11:20:26
    symbol_peflctx=0x7a183048
    hoaerr:0
    Exiting hgolofns at 2012/11/26-11:20:26
    Entered hgolofns at 2012/11/26-11:20:26
    symbol_peflctx=0x7a1760a0
    hoaerr:0
    Exiting hgolofns at 2012/11/26-11:20:26
    Entered hgolofns at 2012/11/26-11:20:26
    symbol_peflctx=0x7a17c2f0
    hoaerr:0
    Exiting hgolofns at 2012/11/26-11:20:26
    Entered hgolofns at 2012/11/26-11:20:26
    symbol_peflctx=0x7a17db78
    hoaerr:0
    Exiting hgolofns at 2012/11/26-11:20:26
    Entered hgolofns at 2012/11/26-11:20:26
    symbol_peflctx=0x7a184390
    hoaerr:0
    Exiting hgolofns at 2012/11/26-11:20:26
    Entered hgolofns at 2012/11/26-11:20:26
    symbol_peflctx=0x7a184ac0
    hoaerr:0
    Exiting hgolofns at 2012/11/26-11:20:26
    Entered hgolofns at 2012/11/26-11:20:26
    symbol_peflctx=0x7a1873f8
    hoaerr:0
    Exiting hgolofns at 2012/11/26-11:20:26
    Entered hgolofns at 2012/11/26-11:20:26
    symbol_peflctx=0x7a1906d8
    hoaerr:0
    Exiting hgolofns at 2012/11/26-11:20:26
    Entered hgolofns at 2012/11/26-11:20:26
    symbol_peflctx=0x7a191038
    hoaerr:0
    Exiting hgolofns at 2012/11/26-11:20:26
    Entered hgolofns at 2012/11/26-11:20:26
    symbol_peflctx=0x7a187dc8
    hoaerr:0
    Exiting hgolofns at 2012/11/26-11:20:26
    Entered hgolofns at 2012/11/26-11:20:26
    symbol_peflctx=0x7a188048
    hoaerr:0
    Exiting hgolofns at 2012/11/26-11:20:26
    Entered hgolofns at 2012/11/26-11:20:26
    symbol_peflctx=0x7a1886c8
    hoaerr:0
    Exiting hgolofns at 2012/11/26-11:20:26
    Entered hgolofns at 2012/11/26-11:20:26
    symbol_peflctx=0x7a1883a0
    hoaerr:0
    Exiting hgolofns at 2012/11/26-11:20:26
    Entered hgolofns at 2012/11/26-11:20:26
    symbol_peflctx=0x7a176040
    hoaerr:0
    Exiting hgolofns at 2012/11/26-11:20:26
    Entered hgolofns at 2012/11/26-11:20:26
    symbol_peflctx=0x7a190738
    hoaerr:0
    Exiting hgolofns at 2012/11/26-11:20:26
    Entered hgolofns at 2012/11/26-11:20:26
    symbol_peflctx=0x7a17c368
    hoaerr:0
    Exiting hgolofns at 2012/11/26-11:20:26
    Entered hgolofns at 2012/11/26-11:20:26
    symbol_peflctx=0x7a18e280
    hoaerr:0
    Exiting hgolofns at 2012/11/26-11:20:26
    Entered hgolofns at 2012/11/26-11:20:26
    symbol_peflctx=0x7a190b28
    hoaerr:0
    Exiting hgolofns at 2012/11/26-11:20:26
    Exiting hgolofn, rc=0 at 2012/11/26-11:20:26
    HOSGIP for "HS_OPEN_CURSORS" returned "50"
    HOSGIP for "HS_FDS_FETCH_ROWS" returned "1"
    HOSGIP for "HS_LONG_PIECE_TRANSFER_SIZE" returned "65536"
    HOSGIP for "HS_NLS_NUMERIC_CHARACTER" returned ".,"
    HOSGIP for "HS_KEEP_REMOTE_COLUMN_SIZE" returned "OFF"
    HOSGIP for "HS_FDS_DELAYED_OPEN" returned "TRUE"
    HOSGIP for "HS_FDS_WORKAROUNDS" returned "0"
    HOSGIP for "HS_FDS_MBCS_TO_GRAPHIC" returned "FALSE"
    HOSGIP for "HS_FDS_GRAPHIC_TO_MBCS" returned "FALSE"
    Invalid value of 64 given for HS_FDS_SQLLEN_INTERPRETATION
    treat_SQLLEN_as_compiled = 1
    Exiting hgoinit, rc=0 at 2012/11/26-11:20:26
    Entered hgolgon at 2012/11/26-11:20:26
    reco:0, name:SA, tflag:0
    Entered hgosuec at 2012/11/26-11:20:26
    Exiting hgosuec, rc=0 at 2012/11/26-11:20:26
    HOSGIP for "HS_FDS_RECOVERY_ACCOUNT" returned "RECOVER"
    HOSGIP for "HS_FDS_TRANSACTION_LOG" returned "HS_TRANSACTION_LOG"
    HOSGIP for "HS_FDS_TIMESTAMP_MAPPING" returned "DATE"
    HOSGIP for "HS_FDS_DATE_MAPPING" returned "DATE"
    HOSGIP for "HS_FDS_MAP_NCHAR" returned "TRUE"
    HOSGIP for "HS_FDS_RESULTSET_SUPPORT" returned "FALSE"
    HOSGIP for "HS_FDS_RSET_RETURN_ROWCOUNT" returned "FALSE"
    HOSGIP for "HS_FDS_PROC_IS_FUNC" returned "FALSE"
    HOSGIP for "HS_FDS_REPORT_REAL_AS_DOUBLE" returned "FALSE"
    using SA as default value for "HS_FDS_DEFAULT_OWNER"
    HOSGIP for "HS_SQL_HANDLE_STMT_REUSE" returned "FALSE"
    Entered hgocont at 2012/11/26-11:20:26
    HS_FDS_CONNECT_INFO = "CardHolders"
    RC=-1 from HOSGIP for "HS_FDS_CONNECT_STRING"
    Entered hgogenconstr at 2012/11/26-11:20:26
    dsn:CardHolders, name:SA
    optn:
    Entered hgocip at 2012/11/26-11:20:26
    dsn:CardHolders
    Exiting hgocip, rc=0 at 2012/11/26-11:20:26
    Exiting hgogenconstr, rc=0 at 2012/11/26-11:20:26
    We configured the odbc.ini, initDB.ora , listener.ora an tnsnmaes.ora as follows.
    [ODBC Data Sources]
    CardHolders = OpenLink SQL Server Lite Driver (multi threaded)
    *** odbc.ini
    [CardHolders]
    Driver = /apex01/oraapex/ODBC_64/lib/sql_mt_lt.so
    ServerType = SQLServer 2000
    Username = SA
    Password = Passw0rd
    Database = CardHolders
    Options = -H 192.168.40.15 -P 1433 -V 9
    FetchBufferSize = 99
    ReadOnly = Yes
    DeferLongFetch =
    JetFix = No
    Description = Sample SQLServer 2000 Lite Connection
    MaxRows =
    NoRowSetSizeLimit = No
    InitialSQL =
    NoAutoCommit = No
    NoLoginBox =
    SqlDbmsName =
    QuotedId = Yes
    AnsiNPW = No
    *** initCardHolders.ora
    HS_FDS_CONNECT_INFO=CardHolders
    HS_FDS_TRACE_LEVEL = DEBUG
    HS_FDS_TRACE_FILE_NAME = CardHolders.trc
    HS_FDS_SHAREABLE_NAME = /apex01/oraapex/ODBC_64/lib/sql_mt_lt.so
    HS_FDS_FETCH_ROWS=1
    HS_LANGUAGE=AMERICAN_AMERICA.WE8ISO8859P1
    HS_FDS_SUPPORT_STATISTICS=FALSE
    *** listener.ora (added)
    (SID_DESC =
    (SID_NAME = CardHolders)
    (ORACLE_HOME= /apex01/oraapex/apexdb/11.2.0.2)
    (PROGRAM = dg4odbc)
    (ENVS=LD_LIBRARY_PATH=/apex01/oraapex/ODBC_64/lib:$ORACLE_HOME/lib)
    *** tnsnames.ora (added)
    CardHolders =
    (DESCRIPTION=
    (ADDRESS=(PROTOCOL=tcp)(HOST=localhost)(PORT=1530))
    (CONNECT_DATA=(SERVICE_NAME=CardHolders))
    (HS=OK)
    Thanks in advance, any help would be appreciated.
    Regards!!

    Hi Tony,
    It would be better to ask this question in the Heterogeneous Connectivity Forum -
    Heterogeneous Connectivity
    Issues connecting from Oracle to non-Oracle databases using Gateways are handled in that forum. This forum is for problems using the Oracle ODBC drivers.
    Regards,
    Mike

  • JS Validation for Drop down List is not working in Oracle PL/SQL Package

    Hi All,
    I am facing an issue with JavaScript validation done in Oracle PL SQL package.
    System Requirement:
    There is one screen which contains two fields viz. FLD 1 & FLD 2 and one 'Submit' button.
    FLD 1 and FLD 2 fields are drop down list boxes.These are mandatory fields.
    The screen is developed in Oracle Mod PL SQL package.
    The html coding and java scripting are embedded in the respective Oracle PL SQL Package procedure which generates this screen,takes the input values provided by user,does the
    field validations and submits the form.
    Issue:
    The javascript validation for FLD 2 dropdown is working successfully.
    When the user leaves this field as blank,the embedded javascript pops up an error message 'Selection of FLD 2 is manadatory before submitting the form!'.
    As FLD 1 is also a mandatory field,the javascripting validation should pop up the similar error message 'Selection of FLD 1 is manadatory before submitting the form!'.
    But,this first field validation is not at all working.
    The system allows to submit the form even if the 'FLD 1' is left blank.
    The javascript code sysntax for validation of FLD 1 & FLD 2 drop down list boxes as follows:
    function validate_form_fields()
    if (document.forms[0].p_fld_1.selectedIndex == 0))) || (document.forms
    [0].p_fld_1.selectedIndex < 1 )
    alert("Selection of FLD 1 is manadatory before submitting the form!!!");
    return false;
    else if (document.forms[0].p_fld_2.selectedIndex == 0))) || (document.forms
    [0].p_fld_2.selectedIndex < 1 )
    alert("Selection of FLD 2 is manadatory before submitting the form!!!");
    return false;
    return true;
    I am viewing the screen from the web browser IE version 8.0.
    Your timely help will really be appreciated.
    Regards & Thanking in advance,
    Alka

    Hi,
    1. Your problem is actually related to JavaScript, not SQL and PL/SQL. So, this is the wrong forum to post. The closest to JS is the Application Express forum {forum:id=137}. Clearly state that it is not an Apex issue and that you are looking for JS help.
    2. Your JS code, the way you has posted it, is syntactically incorrect, so if you post on Apex forum put the correct code and in tags as described in the FAQ
    {quote}
    function validate_form_fields()
    if (document.forms[0].p_fld_1.selectedIndex == 0))) || (document.forms
    [0].p_fld_1.selectedIndex < 1 )
    alert("Selection of FLD 1 is manadatory before submitting the form!!!");
    return false;
    else if (document.forms[0].p_fld_2.selectedIndex == 0))) || (document.forms
    [0].p_fld_2.selectedIndex < 1 )
    alert("Selection of FLD 2 is manadatory before submitting the form!!!");
    return false;
    return true;
    {quote}
    Regards,                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   

  • PRO*C에서 EMBEDDED SQL STATEMENTS를 사용해서 LOB DATATYPES에 접근하는 예제

    제품 : PRECOMPILERS
    작성날짜 : 2001-07-12
    PRO*C에서 EMBEDDED SQL STATEMENTS를 사용해서 LOB DATATYPES에 접근하는 예제
    ==========================================================================
    Pro*C에서 LOB를 사용하는 방법에는 다음 3가지가 있습니다.
    (1) PL/SQL blocks에서 DBMS_LOB package를 이용하는 방법
    (2) OCI function을 이용하는 방법
    (3) Embedded SQL statements을 이용하는 방법
    다음은 (3)번째 방법에 대한 pro*c에서 지원하는 명령어들입니다.
    o APPEND: Appends lob value at the end of another LOB.
    EXEC SQL LOB APPEND :src TO :dst;
    o ASSIGN: Assigns LOB or BFILE locator to another.
    EXEC SQL LOB ASSIGN :src TO :dst;
    o CLOSE: Close LOB or BFILE.
    EXEC SQL LOB CLOSE :src;
    o COPY: Copy all or part of LOB value into another LOB.
    EXEC SQL LOB COPY :amt FROM :src [AT :src_offset] TO :dst [AT dst_offset];
    o CREATE TEMPORARY: Creates a temporary LOB.
    EXEC SQL LOB CREATE TEMPORARY :src;
    o ERASE: Erase the given amount of LOB data starting from a given offset.
    EXEC SQL LOB ERASE :amt FROM :src [AT :src_offset];
    o FILE CLOSE ALL: Closes all the BFILES open in the current session.
    EXEC SQL LOB FILE CLOSE ALL;
    o FILE SET: Set DIRECTORY alias and FILENAME in a BFILE locator.
    EXEC SQL LOB FILE SET :file DIRECTORY = :alias, FILENAME = :filename;
    o FREE TEMPORARY: Free the temporary space for the LOB locator.
    EXEC SQL LOB FREE TEMPORARY :src
    o LOAD FROM FILE: Copy all or part of BFIL into an internal LOB.
    EXEC SQL LOB LOAD :amt FROM FILE :file [AT :src_offset]
    INTO :dst [AT :dst_offset];
    o OPEN: Open a LOB or BFILE for read or read/write.
    EXEC SQL LOB OPEN :src [ READ ONLY | READ WRITE ];
    o READ: Reads all or part of LOB or BFILE into a buffer.
    EXEC SQL LOB READ :amt FROM :src [AT :src_offset]
    INTO :buffer [WITH LENGTH :buffer];
    o TRIM: Truncates the LOB vlaue.
    EXEC SQL LOB TRIM :src to :newlen;
    o WRITE: Writes contents of the buffer to a LOB.
    EXEC SQL LOB WRITE [APPEND] [FIRST | NEXT | LAST | ONE ]
    :amt FROM :buffer [WITH LENGTH :buflen] INTO :dst [AT :dst_offset];
    o DESCRIBE: Retrieves the attributes from a LOB.
    EXEC SQL LOB DESCRIBE :src GET attribute1 [{, attributeN}]
    INTO :hv1 [[INDICATOR] :hv_ind1] [{, :hvN [[INDICATOR] :hv_indN] }];
    Attributes can be any of the following:
    CHUNKSIZE: chunk size used to store the LOB value
    DIRECTORY: name of the DIRECTORY alias for BFILE
    FILEEXISTS: whether BFILE exists or not
    FILENAME: BFILE name
    ISOPEN: whether BFILE with this locate is OPEN or not
    ISTEMPORARY: whether specified LOB is temporary or not
    LENGTH: Length of BLOBs and BFILE in bytes, CLOBs and NCLOBs
    in characters.
    다음은 LOB를 사용하는 sample을 실행하는 방법입니다.
    1. 먼저 scott user에서 다음을 실행합니다. (create directory를 할 수 있는 권한이
    있어야 하며, directory는 사용하시는 환경에 맞도록 수정해 주십시요.)
    drop table lob_table;
    create table lob_table (key number, a_blob BLOB, a_clob CLOB);
    drop table lobdemo;
    create table lobdemo (key number, a_blob BLOB, a_bfile BFILE);
    drop directory dir_alias;
    create directory dir_alias as '/users/app/oracle/product/8.1.7/precomp/demo/proc';
    insert into lob_table values(1, utl_raw.cast_to_raw('1111111111'), 'aaaaaaaa');
    commit;
    2. 다음 코드는 out.gif 파일을 위에서 지정한 directory에 만들고 lob_table의
    내용에 들어있는 BLOB의 내용을 저장하는 sample입니다.
    #include <stdio.h>
    #include <string.h>
    #include <stdlib.h>
    #include <sqlda.h>
    #include <sqlcpr.h>
    /* Define constants for VARCHAR lengths. */
    #define UNAME_LEN 20
    #define PWD_LEN 40
    /* Declare variables. No declare section is
    needed if MODE=ORACLE. */
    VARCHAR username[UNAME_LEN]; /* VARCHAR is an Oracle-supplied struct */
    varchar password[PWD_LEN]; /* varchar can be in lower case also. */
    /* The following 3 lines avoid inclusion of oci.h during precompilation
    oci.h is needed only during compilation to resolve calls generated by
    the precompiler
    #ifndef ORA_PROC
    #include <oci.h>
    #endif
    #include <sqlca.h>
    OCIBlobLocator *blob;
    OCIClobLocator *clob;
    FILE *fp;
    unsigned int amt, offset = 1;
    #define MAXBUFLEN 5000
    unsigned char buffer[MAXBUFLEN];
    EXEC SQL VAR buffer IS RAW(MAXBUFLEN);
    /* Declare error handling function. */
    void sql_error(msg)
    char *msg;
    char err_msg[128];
    size_t buf_len, msg_len;
    EXEC SQL WHENEVER SQLERROR CONTINUE;
    printf("\n%s\n", msg);
    buf_len = sizeof (err_msg);
    sqlglm(err_msg, &buf_len, &msg_len);
    printf("%.*s\n", msg_len, err_msg);
    EXEC SQL ROLLBACK RELEASE;
    exit(EXIT_FAILURE);
    void main()
    /* Connect to ORACLE--
    * Copy the username into the VARCHAR.
    strncpy((char *) username.arr, "SCOTT", UNAME_LEN);
    /* Set the length component of the VARCHAR. */
    username.len =
    (unsigned short) strlen((char *) username.arr);
    /* Copy the password. */
    strncpy((char *) password.arr, "TIGER", PWD_LEN);
    password.len =
    (unsigned short) strlen((char *) password.arr);
    /* Register sql_error() as the error handler. */
    EXEC SQL WHENEVER SQLERROR DO sql_error("ORACLE error--\n");
    /* Connect to ORACLE. Program will call sql_error()
    * if an error occurs when connecting to the default database.
    EXEC SQL CONNECT :username IDENTIFIED BY :password;
    printf("\nConnected to ORACLE as user: %s\n", username.arr);
    /* Allocate the LOB host variables and select the BLOB value */
    EXEC SQL ALLOCATE :blob;
    EXEC SQL ALLOCATE :clob;
    EXEC SQL SELECT a_blob INTO :blob FROM lob_table WHERE key=1;
    /* Open external file to which BLOB value should be written */
    fp = fopen("out.gif", "w");
    EXEC SQL WHENEVER NOT FOUND GOTO end_of_lob;
    amt = 5000;
    EXEC SQL LOB READ :amt FROM :blob AT :offset INTO :buffer;
    fwrite(buffer, MAXBUFLEN, 1, fp);
    EXEC SQL WHENEVER NOT FOUND DO break;
    /* Use polling method to continue reading the next pieces */
    while (TRUE)
    EXEC SQL LOB READ :amt FROM :blob INTO :buffer;
    fwrite(buffer, MAXBUFLEN, 1, fp);
    end_of_lob:
    fwrite(buffer, amt, 1, fp);
    printf("\nG'day.\n\n\n");
    /* Disconnect from ORACLE. */
    EXEC SQL ROLLBACK WORK RELEASE;
    exit(EXIT_SUCCESS);
    3. 다음 코드는 위에서 만든 out.gif file을 lobdemo에 저장하는 sample입니다.
    #include <stdio.h>
    #include <string.h>
    #include <stdlib.h>
    #include <sqlda.h>
    #include <sqlcpr.h>
    /* Define constants for VARCHAR lengths. */
    #define UNAME_LEN 20
    #define PWD_LEN 40
    /* Declare variables. No declare section is
    needed if MODE=ORACLE. */
    VARCHAR username[UNAME_LEN]; /* VARCHAR is an Oracle-supplied struct */
    varchar password[PWD_LEN]; /* varchar can be in lower case also. */
    /* The following 3 lines avoid inclusion of oci.h during precompilation
    oci.h is needed only during compilation to resolve call generated by
    the precompiler
    #ifndef ORA_PROC
    #include <oci.h>
    #endif
    #include <sqlca.h>
    OCIBlobLocator *blob;
    OCIBFileLocator *bfile;
    char *alias = "DIR_ALIAS";
    char *filename = "out.gif";
    unsigned int amt = 50;
    unsigned int filelen;
    /* Declare error handling function. */
    void sql_error(msg)
    char *msg;
    char err_msg[128];
    size_t buf_len, msg_len;
    EXEC SQL WHENEVER SQLERROR CONTINUE;
    printf("\n%s\n", msg);
    buf_len = sizeof (err_msg);
    sqlglm(err_msg, &buf_len, &msg_len);
    printf("%.*s\n", msg_len, err_msg);
    EXEC SQL ROLLBACK RELEASE;
    exit(EXIT_FAILURE);
    void main()
    /* Connect to ORACLE--
    * Copy the username into the VARCHAR.
    strncpy((char *) username.arr, "SCOTT", UNAME_LEN);
    /* Set the length component of the VARCHAR. */
    username.len =
    (unsigned short) strlen((char *) username.arr);
    /* Copy the password. */
    strncpy((char *) password.arr, "TIGER", PWD_LEN);
    password.len =
    (unsigned short) strlen((char *) password.arr);
    /* Register sql_error() as the error handler. */
    EXEC SQL WHENEVER SQLERROR DO sql_error("ORACLE error--\n");
    /* Connect to ORACLE. Program will call sql_error()
    * if an error occurs when connecting to the default database.
    EXEC SQL CONNECT :username IDENTIFIED BY :password;
    printf("\nConnected to ORACLE as user: %s\n", username.arr);
    /* Allocate the LOB locator */
    EXEC SQL ALLOCATE :blob;
    EXEC SQL ALLOCATE :bfile;
    /* Initialize the DIRECTORY alias of the BFILE and FILENAME */
    EXEC SQL LOB FILE SET :bfile
    DIRECTORY = :alias, FILENAME = :filename;
    EXEC SQL INSERT INTO lobdemo values (1, EMPTY_BLOB(), :bfile);
    EXEC SQL SELECT a_blob, a_bfile INTO :blob, :bfile FROM lobdemo
    WHERE key = 1;
    EXEC SQL LOB OPEN :bfile;
    /* Get the BFILE length */
    EXEC SQL LOB DESCRIBE :bfile
    GET LENGTH INTO :filelen;
    printf("File length is: %d\n", filelen);
    amt = filelen;
    /* Read BFILE and write to BLOB */
    EXEC SQL LOB LOAD :amt FROM FILE :bfile INTO :blob;
    EXEC SQL LOB CLOSE :bfile;
    printf("\nG'day.\n\n\n");
    /* Disconnect from ORACLE. */
    EXEC SQL COMMIT WORK RELEASE;
    exit(EXIT_SUCCESS);
    4. 다음은 실행한 결과 입니다.
    첫번째 sample :
    Connected to ORACLE as user: SCOTT
    G'day.
    두번째 sample :
    Connected to ORACLE as user: SCOTT
    File length is: 10
    G'day.

  • Tnsping not working from oracle to sql

    hi
    i need to connect sql server 2005 on windows server from my oracle database 10.2 on hpux
    before doing this setup on unix server to windows server
    i m testing it on my local windows xp system where oracle is installed and trying to connect to remote sql server
    so 1 i configured ODBC drivers for sql server
    2. then i have alterd initfile under dir $ORACLE_HOME/hs/admin/
    with this parameter
    # This is a sample agent init file that contains the HS parameters that are
    # needed for an ODBC Agent.
    # HS init parameters
    HS_FDS_CONNECT_INFO = Test1
    HS_FDS_TRACE_LEVEL = off
    # Environment variables required for the non-Oracle system
    #set <envvar>=<value>
    3 i configured listener. ora file and added this entries in listener.ora file under dir $ORACLE_HOME/network/admin/
    # listener.ora Network Configuration File: C:\oracle\product\10.2.0\db_1\network\admin\listener.ora
    # Generated by Oracle configuration tools.
    SID_LIST_LISTENER =
    (SID_LIST =
    (SID_DESC =
    (SID_NAME = PLSExtProc)
    (ORACLE_HOME = C:\oracle\product\10.2.0\db_1)
    (PROGRAM = extproc)
    LISTENER =
    (DESCRIPTION_LIST =
    (DESCRIPTION =
    (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
    (ADDRESS = (PROTOCOL = TCP)(HOST = 01hw172211)(PORT = 1521))
    LISTENERTEST1 =
    (ADDRESS_LIST=
    (ADDRESS=(PROTOCOL=tcp)(HOST=01hw172211)(PORT=1522))
    (ADDRESS=(PROTOCOL=ipc)(KEY=PNPKEY)))
    SID_LIST_LISTENERTEST1=
    (SID_LIST=
    (SID_DESC=
    (SID_NAME=TEST1)
    (ORACLE_HOME = C:\oracle\product\10.1.0\db_1)
    (PROGRAM=hsodbc)
    where 01hw172211 is the host where oracle is installed and TEST1 Is the sql database
    4 then i configured tnsnames. ora file under dir $ORACLE_HOME/network/admin
    ORCL =
    (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = 01hw172211)(PORT = 1521))
    (CONNECT_DATA =
    (SERVER = DEDICATED)
    (SERVICE_NAME = orcl)
    EXTPROC_CONNECTION_DATA =
    (DESCRIPTION =
    (ADDRESS_LIST =
    (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
    (CONNECT_DATA =
    (SID = PLSExtProc)
    (PRESENTATION = RO)
    TEST1 =
    (DESCRIPTION=
    (ADDRESS=(PROTOCOL=tcp)(HOST=01hw172211)(PORT=1522))
    (CONNECT_DATA=(SID=test1))
    (HS=OK)
    where ORCL is oracle database on local system 01hw172211 and TEST1 is SQL SERVER database
    5 then i start the new listenertest1 listener ... listener started successfully
    6 then i checked tnsping test1 ... but it is faild..
    can any body tell me what is wrong in above procedure for connecting from oracle to sql ... in step no. 4 there is a TEST1 CONNECT discriptor where I have used HOST=local system where oracle is installed.. is it correct OR i have to specifiy HOST=sql server host name.

    hi
    i need to connect sql server 2005 on windows server from my oracle database 10.2 on hpux
    before doing this setup on unix server to windows server
    i m testing it on my local windows xp system where oracle is installed and trying to connect to remote sql server
    so 1 i configured ODBC drivers for sql server
    2. then i have alterd initfile under dir $ORACLE_HOME/hs/admin/
    with this parameter
    # This is a sample agent init file that contains the HS parameters that are
    # needed for an ODBC Agent.
    # HS init parameters
    HS_FDS_CONNECT_INFO = Test1
    HS_FDS_TRACE_LEVEL = off
    # Environment variables required for the non-Oracle system
    #set <envvar>=<value>
    3 i configured listener. ora file and added this entries in listener.ora file under dir $ORACLE_HOME/network/admin/
    # listener.ora Network Configuration File: C:\oracle\product\10.2.0\db_1\network\admin\listener.ora
    # Generated by Oracle configuration tools.
    SID_LIST_LISTENER =
    (SID_LIST =
    (SID_DESC =
    (SID_NAME = PLSExtProc)
    (ORACLE_HOME = C:\oracle\product\10.2.0\db_1)
    (PROGRAM = extproc)
    LISTENER =
    (DESCRIPTION_LIST =
    (DESCRIPTION =
    (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
    (ADDRESS = (PROTOCOL = TCP)(HOST = 01hw172211)(PORT = 1521))
    LISTENERTEST1 =
    (ADDRESS_LIST=
    (ADDRESS=(PROTOCOL=tcp)(HOST=01hw172211)(PORT=1522))
    (ADDRESS=(PROTOCOL=ipc)(KEY=PNPKEY)))
    SID_LIST_LISTENERTEST1=
    (SID_LIST=
    (SID_DESC=
    (SID_NAME=TEST1)
    (ORACLE_HOME = C:\oracle\product\10.1.0\db_1)
    (PROGRAM=hsodbc)
    where 01hw172211 is the host where oracle is installed and TEST1 Is the sql database
    4 then i configured tnsnames. ora file under dir $ORACLE_HOME/network/admin
    ORCL =
    (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = 01hw172211)(PORT = 1521))
    (CONNECT_DATA =
    (SERVER = DEDICATED)
    (SERVICE_NAME = orcl)
    EXTPROC_CONNECTION_DATA =
    (DESCRIPTION =
    (ADDRESS_LIST =
    (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
    (CONNECT_DATA =
    (SID = PLSExtProc)
    (PRESENTATION = RO)
    TEST1 =
    (DESCRIPTION=
    (ADDRESS=(PROTOCOL=tcp)(HOST=01hw172211)(PORT=1522))
    (CONNECT_DATA=(SID=test1))
    (HS=OK)
    where ORCL is oracle database on local system 01hw172211 and TEST1 is SQL SERVER database
    5 then i start the new listenertest1 listener ... listener started successfully
    6 then i checked tnsping test1 ... but it is faild..
    can any body tell me what is wrong in above procedure for connecting from oracle to sql ... in step no. 4 there is a TEST1 CONNECT discriptor where I have used HOST=local system where oracle is installed.. is it correct OR i have to specifiy HOST=sql server host name.

  • DB Link from Oracle to SQL Server error

    Dear buddies,
    I need to perfome some select on the tables which reside in SQL Server 2005 from Oracle 10g.
    I followed the steps given in :
    http://www.dba-oracle.com/t_heterogeneous_database_connections_sql_server.htm
    I could perform a TNS ping which is successful but only when I perform a select I receive this error.
    ERROR at line 1:
    ORA-28545: error diagnosed by Net8 when connecting to an agent
    Unable to retrieve text of NETWORK/NCR message 65535
    ORA-02063: preceding 2 lines from SQLS
    I have checked that my dsn name is in small caps all the way wherever it is used(Since its suggested in many sites).
    Please guide me.
    I am really looking ahead for a solution.
    Regards,
    Nith

    use the like to setup ODBC and datasource
    http://www.databasejournal.com/features/oracle/article.php/3442661/Making-a-Connection-from-Oracle-to-SQL-Server.htm
    and then create link server in sql server after you test connenction with oracle

  • Connecting from Oracle to SQL Server

    Hi
    I am now tring to connect from oracle to sql server using database link.
    Created database link
    but when connecting to remote db getting the floowing error
    select * from region@mysqlserverdsn
    ERROR at line 1:
    ORA-28545: error diagnosed by Net8 when connecting to an agent
    Unable to retrieve text of NETWORK/NCR message 65535
    ORA-02063: preceding 2 lines from MYSQLSERVERDSN
    Can anyone help
    My Listener File
    SID_LIST_LISTENER =
    (SID_LIST =
    (SID_DESC =
    (SID_NAME = PLSExtProc)
    (ORACLE_HOME = D:\oracle\product\10.2.0\db_1)
    (PROGRAM = extproc1)
    (SID_DESC =
    (GLOBAL_DBNAME = ORCL.DOMAIN.COM)
    (ORACLE_HOME = D:\oracle\product\10.2.0\db_1)
    (SID_NAME = orcl)
    (SID_DESC =
    (GLOBAL_DBNAME = NORTHWIND.DOMAIN.COM)
    (ORACLE_HOME = D:\oracle\product\10.2.0\db_1)
    (SID_NAME = MYSQLSERVERDSN)
    (PROGRAM=hsodbc)
    LISTENER =
    (DESCRIPTION_LIST =
    (DESCRIPTION =
    (ADDRESS_LIST=
         (ADDRESS = (PROTOCOL = TCP)(HOST = SALIHKM.DOMAIN.COM)(PORT = 1522))
    (ADDRESS_LIST =
    (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC))
    My Tnsnames Entry
    MYSQLSERVERDSN =
    (DESCRIPTION=
    (ADDRESS=(PROTOCOL=tcp)(HOST=xxx.xxx.xxx.xxx)(PORT=1522))
    (CONNECT_DATA=(SID=MYSQLSERVERDSN))
    (HS=OK)
    Lsnrctl is working fine.
    c:\>lsnrctl start
    LSNRCTL for 32-bit Windows: Version 10.2.0.1.0 - Production on 18-MAY-2006 18:53
    :13
    Copyright (c) 1991, 2005, Oracle. All rights reserved.
    Starting tnslsnr: please wait...
    TNSLSNR for 32-bit Windows: Version 10.2.0.1.0 - Production
    System parameter file is D:\oracle\product\10.2.0\db_1\network\admin\listener.or
    a
    Log messages written to D:\oracle\product\10.2.0\db_1\network\log\listener.log
    Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=SALIHKM.DOMAIN.COM)(POR
    T=1522)))
    Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=\\.\pipe\EXTPROCipc)
    Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=SALIHKM.DOMAIN.COM)(POR
    T=1522)))
    STATUS of the LISTENER
    Alias LISTENER
    Version TNSLSNR for 32-bit Windows: Version 10.2.0.1.0 - Produ
    ction
    Start Date 18-MAY-2006 18:53:16
    Uptime 0 days 0 hr. 0 min. 3 sec
    Trace Level off
    Security ON: Local OS Authentication
    SNMP OFF
    Listener Parameter File D:\oracle\product\10.2.0\db_1\network\admin\listener.o
    ra
    Listener Log File D:\oracle\product\10.2.0\db_1\network\log\listener.log
    Listening Endpoints Summary...
    (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=SALIHKM.DOMAIN.COM)(PORT=1522)))
    (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=\\.\pipe\EXTPROCipc)))
    Services Summary...
    Service "NORTHWIND.DOMAIN.COM" has 1 instance(s).
    Instance "MYSQLSERVERDSN", status UNKNOWN, has 1 handler(s) for this service..
    Service "ORCL.DOMAIN.COM" has 1 instance(s).
    Instance "orcl", status UNKNOWN, has 1 handler(s) for this service...
    Service "PLSExtProc" has 1 instance(s).
    Instance "PLSExtProc", status UNKNOWN, has 1 handler(s) for this service...
    The command completed successfully
    But Tnsping show no listener
    C:\>tnsping MYSQLSERVERDSN
    TNS Ping Utility for 32-bit Windows: Version 10.2.0.1.0 - Production on 18-MAY-2
    006 18:56:27
    Copyright (c) 1997, 2005, Oracle. All rights reserved.
    Used parameter files:
    D:\oracle\product\10.2.0\db_1\network\admin\sqlnet.ora
    Used TNSNAMES adapter to resolve the alias
    Attempting to contact (DESCRIPTION= (ADDRESS=(PROTOCOL=tcp)(HOST=xxx.xxx.xxx.xxx)(P
    ORT=1522)) (CONNECT_DATA=(SID=MYSQLSERVERDSN)) (HS=OK))
    TNS-12541: TNS:no listener
    Services
    C:\>lsnrctl services
    LSNRCTL for 32-bit Windows: Version 10.2.0.1.0 - Production on 18-MAY-2006 19:00
    :04
    Copyright (c) 1991, 2005, Oracle. All rights reserved.
    Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=SALIHKM.DOMAIN.COM)(POR
    T=1522)))
    Services Summary...
    Service "NORTHWIND.DOMAIN.COM" has 1 instance(s).
    Instance "MYSQLSERVERDSN", status UNKNOWN, has 1 handler(s) for this service..
    Handler(s):
    "DEDICATED" established:0 refused:0
    LOCAL SERVER
    Service "ORCL.DOMAIN.COM" has 1 instance(s).
    Instance "orcl", status UNKNOWN, has 1 handler(s) for this service...
    Handler(s):
    "DEDICATED" established:0 refused:0
    LOCAL SERVER
    Service "PLSExtProc" has 1 instance(s).
    Instance "PLSExtProc", status UNKNOWN, has 1 handler(s) for this service...
    Handler(s):
    "DEDICATED" established:0 refused:0
    LOCAL SERVER
    Service "orcl" has 1 instance(s).
    Instance "orcl", status READY, has 1 handler(s) for this service...
    Handler(s):
    "DEDICATED" established:1 refused:0 state:ready
    LOCAL SERVER
    Service "orclXDB" has 1 instance(s).
    Instance "orcl", status READY, has 1 handler(s) for this service...
    Handler(s):
    "D000" established:0 refused:0 current:0 max:1002 state:ready
    DISPATCHER <machine: SALIHKM, pid: 2080>
    (ADDRESS=(PROTOCOL=tcp)(HOST=SALIHKM.DOMAIN.COM)(PORT=1070))
    Service "orcl_XPT" has 1 instance(s).
    Instance "orcl", status READY, has 1 handler(s) for this service...
    Handler(s):
    "DEDICATED" established:1 refused:0 state:ready
    LOCAL SERVER
    The command completed successfully
    I am very much confused with this situation.
    Thanks & Regards
    Salih Km

    Hi ,
    Thanks for your reply.
    Contents of my initMYSQLSERVERDSN.ora file is
    # This is a sample agent init file that contains the HS parameters that are
    # needed for an ODBC Agent.
    # HS init parameters
    HS_FDS_CONNECT_INFO = MYSQLSERVERDSN
    HS_FDS_TRACE_LEVEL = 0
    HS_FDS_TRACE_FILE_NAME = hsmsql.trc
    # Environment variables required for the non-Oracle system
    #set <envvar>=<value>
    set ODBCINI=c:\WINDOWS\ODBC.INI
    SALIHKM.DOMAIN.COM is my system in which Oracle Test DB is Installed.
    SQL Server is in another location.
    In Tnsnames i specified ip address.
    One more doubt.
    I am using 10g Release 2 demo version.
    whether it will support Hetrogeneous Services?
    How to know whether a database supports HS or not?
    Thanks & Regards
    Salih Km

  • Oracle DB Link from Oracle to SQL Server

    Dear buddies,
    I am trying to create a dblink from Oracle to SQL Server.
    This is my tnsnames.ora
    sq =
    (DESCRIPTION=
       (ADDRESS=(PROTOCOL=tcp)(HOST=LOCALHOST)(PORT=1521)
       (CONNECT_DATA=(SID=sq))
       (HS=OK)
    )This is my listener
    SID_LIST_LISTENER =
      (SID_LIST =
          (SID_DESC =
          (SID_NAME = sq)
          (ORACLE_HOME = D:\oracle\product\10.2.0\db_2)
          (PROGRAM = hsodbc)
    LISTENER =
      (DESCRIPTION =
        (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
      )initsq.ora
    # This is a sample agent init file that contains the HS parameters that are
    # needed for an ODBC Agent.
    # HS init parameters
    HS_FDS_CONNECT_INFO = sq
    HS_FDS_TRACE_LEVEL  = OFF
    # Environment variables required for the non-Oracle system
    #set <envvar>=<value>I have created my System DSN for sq with the appropriate values which works fine when I tested the connection.
    These 2 databases are in different servers.
    This is how I created the db link in Oracle
    create public database link sq
    CONNECT TO XXX IDENTIFIED BY "XXX"
    using 'sq'
    select "Column1"
    from "Table1"@'sq';The error I receive is: ORA-01729: database link name expected
    When I try to recreate the database link it tells me that: ORA-02011: duplicate database link name
    I hope someone could guide me.
    Thanks.

    C:\Documents and Settings\Administrator>tnsping sq
    TNS Ping Utility for 32-bit Windows: Version 10.2.0.4.0 - Production on 16-AUG-2011 14:48:40
    Copyright (c) 1997,  2007, Oracle.  All rights reserved.
    Used parameter files:
    D:\oracle\product\10.2.0\db_2\network\admin\sqlnet.ora
    TNS-03505: Failed to resolve name
    C:\Documents and Settings\Administrator>

  • Calling stored procedure from embedded sql

    I'm trying to call a stored procedure from embedded sql. I'm following the examples located in
    http://download.oracle.com/docs/cd/B19306_01/appdev.102/a96109/pco06pls.htm#i9641
    I have the following section in my .pco file before precompiling.
    exec sql execute
    begin
    docs.grant_access_to_all_categories(:p_sam_id);
    end;
    end-exec.
    When running procob on the file with the above code I get the following error.
    Error at line 225, column 13 in file pco\docs_stored_procedures.pco
    exec sql execute
    ............1
    PCB-S-00576, PLS-201: identifier 'DOCS.GRANT_ACCESS_TO_ALL_CATEGORIES' must be d
    eclared
    Error at line 225, column 13 in file pco\docs_stored_procedures.pco
    exec sql execute
    ............1
    PCB-S-00576, PLS-0: Statement ignored
    Any ideas on what I am doing wrong on calling this stored procedure.

    I get the same error when trying to precompile sample11.pco from the demo directory in the oracle client software.
    Error at line 70, column 12 in file sample11.pco
    EXEC SQL EXECUTE
    ...........1
    PCB-S-00576, PLS-201: identifier 'EMP_DEMO_PKG.OPEN_CUR' must be declared
    Error at line 70, column 12 in file sample11.pco
    EXEC SQL EXECUTE
    ...........1
    PCB-S-00576, PLS-0: Statement ignored

  • Use of Pro*C with embedded SQL

    Is it possible to reuse existing Pro*C with embedded SQL written for an Oracle 9i database on an Oracle Lite running on Windows CE/PocketPC plattform? Wich steps and tools are required to transform (compile, precompile) this code?
    Can the functionality then be easily accessed from java code?
    Thanks in advanced!

    Oracle already did. Pradeep is an Oracle developer working in Oracle9i Lite group. This is this Product Manager speaking

  • Embedded SQL query in C - variable not in select list

    Hello everyone,
    I am new to using embedded SQL in C. I have written a query based on some very similar code I have found and I keep getting this error:
    ID: ORA-XXXX
    OVRD:
    TEXT: Oracle Errors Found - Consult Application Development Team
    INFO:
    SQLC: -1007
    GLM: ORA-01007: variable not in select list
    If anyone could help me figure out what I am doing wrong that is causing this error it would be much appreciated. Thanks in advance!
    Here is the query that is generating the error, I have changed the variable names but the syntax is the same:
    SELECT TEMP_TABLE.tble,
    TEMP_TABLE.item_date,
    TEMP_TABLE.item_number,
    TEMP_TABLE.item_id,
    TEMP_TABLE.amount,
    TEMP_TABLE.method
    FROM (
    SELECT 'C' tble,
    item_date,
    item_number,
    item_id,
    amount,
    method
    FROM current
    WHERE (settlement_date IS NULL)
    UNION ALL
    SELECT '1' tble,
    item_date,
    item_number,
    item_id,
    amount,
    method
    FROM prev1
    WHERE (date IS NULL)
    UNION ALL
    SELECT '2' tble,
    item_date,
    item_number,
    item_id,
    amount,
    pay_method
    FROM prev2
    WHERE (date IS NULL)
    UNION ALL
    SELECT '3' tble,
    item_date,
    item_number,
    item_id,
    amount,
    pay_method
    FROM prev3
    WHERE (date IS NULL)
    UNION ALL
    SELECT '4' tble,
    item_date,
    item_number,
    item_id,
    amount,
    method
    FROM prev4
    WHERE (date IS NULL)) TEMP_TABLE
    WHERE (TEMP_TABLE.item_date,
    TEMP_TABLE.item_number,
    TEMP_TABLE.item_id) IN
    (SELECT item_date, item_number, item_id
    FROM item
    WHERE (source, location) IN
    (SELECT source, location
    FROM SOURCE_REF
    WHERE online = 'O'
    AND (source, location) IN
    (SELECT source,
    location
    FROM SOURCE_METHOD_REF
    WHERE type = 'P')))

    Oh yeah I forgot to add that I have tested the query in TOAD and it works just fine so its something to do with embedding it into C I believe.

Maybe you are looking for