Need SQL tuning tips in oracle 10g.

From time to time I come across some slow running queries used in SQR. I want to know the tuning technics in oracle 10g as I believe it is different now becasue of CBO.
As I am not an oracle man to tune the query I can try if there are any guidelines. Also while optimizing a query what are the important things need to be considered:
Do you want the first rows back quickly (typically during online processing) or is the total time for the query (typically a batch process) more important?
Are the tables properly indexed to take advantage of the various operations available?
How large are the tables? Joining smaller tables first is usually more efficient.
How selective are the indexes? Indexes on fields that have only a few values don't really help.
How is sorting done? Are sorting and grouping operations necessary?
Any help is greatly appreciated.

user5846372 wrote:
As I am not an oracle man to tune the query I can try if there are any guidelines. Also while optimizing a query what are the important things need to be considered:Some things to consider about tuning.
Re: Explain  "Explain Plan"...
>
Do you want the first rows back quickly (typically during online processing) or is the total time for the query (typically a batch process) more important?
Are the tables properly indexed to take advantage of the various operations available? These are important considerations
How large are the tables? Joining smaller tables first is usually more efficient. The optimizer usually makes this decision
How selective are the indexes? Indexes on fields that have only a few values don't really help. But can still be useful if the data can be read from the index instead of the table.
How is sorting done? Are sorting and grouping operations necessary? This is a business requirement, if you need to sort you need to sort.

Similar Messages

  • General question on SQL Server 2000 to Oracle 10g

    Hello all,
    I just have a general question on migration from SQL Server 2000 to Oracle 10g using SQL Developer.
    How does it migrate Users with proper privileges from SQL Server to Oracle? Follow the interface steps? Or should the users be created on destination Oracle side?
    Thank you.

    Hi,
    It depends which type of migration you are making.
    For a 'Standard' migration when you migrate data a 'create user' statement is created as part of the migration and you will see this in the generated code.
    If you are using the 'Quick' migration option then you need to create the Oracle user or use an existing user to receive the data.
    Your best option is to review the documentation available from -
    http://www.oracle.com/technology/tech/migration//workbench/index_sqldev_omwb.html
    or directly from -
    http://download.oracle.com/docs/cd/E12151_01/index.htm
    and then get back with specific questions if this does not give you the information you need.
    Review the chapter -
    2. Migrating Third-Party Databases
    in -
    Oracle® Database SQL Developer User’s Guide Release 1.5
    Regards,
    Mike

  • Problem in Loading Data from SQL Server 2000 to Oracle 10g

    Hi All,
    I am a university student and using ODI for my final project on real-time data warehousing. I am trying to load data from MS SQL Server 2000 into Oracle 10g target table. Everything goes fine until I execute the interface for the initial load. When I choose the CKM Oracle(Create unique index on the I$ table) km, the following step fails:
    21 - Integration - Prj_Dim_RegionInterface - Create Unique Index on flow table
    Where Prj_Dim_Region is the name of my target table in Oracle.
    The error message is:
    955 : 42000 : java.sql.SQLException: ORA-00955: name is already used by an existing object
    java.sql.SQLException: ORA-00955: name is already used by an existing object
         at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:125)
         at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:316)
         at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:282)
         at oracle.jdbc.driver.T4C8Oall.receive(T4C8Oall.java:639)
         at oracle.jdbc.driver.T4CPreparedStatement.doOall8(T4CPreparedStatement.java:185)
         at oracle.jdbc.driver.T4CPreparedStatement.execute_for_rows(T4CPreparedStatement.java:633)
         at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1086)
         at oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:2984)
         at oracle.jdbc.driver.OraclePreparedStatement.executeUpdate(OraclePreparedStatement.java:3057)
         at com.sunopsis.sql.SnpsQuery.executeUpdate(SnpsQuery.java)
         at com.sunopsis.dwg.dbobj.SnpSessTaskSql.execStdOrders(SnpSessTaskSql.java)
         at com.sunopsis.dwg.dbobj.SnpSessTaskSql.treatTaskTrt(SnpSessTaskSql.java)
         at com.sunopsis.dwg.dbobj.SnpSessTaskSqlI.treatTaskTrt(SnpSessTaskSqlI.java)
         at com.sunopsis.dwg.dbobj.SnpSessTaskSql.treatTask(SnpSessTaskSql.java)
         at com.sunopsis.dwg.dbobj.SnpSessStep.treatSessStep(SnpSessStep.java)
         at com.sunopsis.dwg.dbobj.SnpSession.treatSession(SnpSession.java)
         at com.sunopsis.dwg.cmd.DwgCommandSession.treatCommand(DwgCommandSession.java)
         at com.sunopsis.dwg.cmd.DwgCommandBase.execute(DwgCommandBase.java)
         at com.sunopsis.dwg.cmd.e.i(e.java)
         at com.sunopsis.dwg.cmd.g.y(g.java)
         at com.sunopsis.dwg.cmd.e.run(e.java)
         at java.lang.Thread.run(Unknown Source)
    I am using a surrogate key column in my target table alongwith the natural key. The natural key is populated by the primary key of my source table, but for the surrogate key, I have created a sequence in my oracle schema where the target table exists and have used the following code for mapping:
    <%=snpRef.getObjectName( "L" , "SQ_PRJ_DIM_REGION" , "D" )%>.nextval
    I have chosen to execute this code on target.
    Among my attempts to solve this problem was to set Create Index option of the CKM Oracle(Create Index for the I$ Table) to No so that it wont create any index on the flow table. I also tried to use the simple CKM Oracle km . Both solutions allowed the interface to execute successfully without any errors, but the data was not loaded into the target table.
    When I right-click on the Prj_Dim_Region data store and choose Data, it shows empty. Pressing the SQL button in this data store shows a dialog box " New Query" where I see this query:
    select * from NOVELTYFURNITUREDW.PRJ_DIM_REGION
    But when i press OK to run it, I get this error message:
    java.lang.IllegalArgumentException: Row index out of range
         at javax.swing.JTable.boundRow(Unknown Source)
         at javax.swing.JTable.setRowSelectionInterval(Unknown Source)
         at com.borland.dbswing.JdbTable.accessChange(JdbTable.java:2959)
         at com.borland.dx.dataset.AccessEvent.dispatch(Unknown Source)
         at com.borland.jb.util.EventMulticaster.dispatch(Unknown Source)
         at com.borland.dx.dataset.DataSet.a(Unknown Source)
         at com.borland.dx.dataset.DataSet.a(Unknown Source)
         at com.borland.dx.dataset.DataSet.a(Unknown Source)
         at com.borland.dx.dataset.DataSet.open(Unknown Source)
         at com.borland.dx.dataset.StorageDataSet.refresh(Unknown Source)
         at com.borland.dx.sql.dataset.QueryDataSet.refresh(Unknown Source)
         at com.borland.dx.sql.dataset.QueryDataSet.executeQuery(Unknown Source)
         at com.sunopsis.graphical.frame.a.cg.actionPerformed(cg.java)
         at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
         at javax.swing.AbstractButton$ForwardActionEvents.actionPerformed(Unknown Source)
         at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
         at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
         at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Unknown Source)
         at java.awt.AWTEventMulticaster.mouseReleased(Unknown Source)
         at java.awt.Component.processMouseEvent(Unknown Source)
         at java.awt.Component.processEvent(Unknown Source)
         at java.awt.Container.processEvent(Unknown Source)
         at java.awt.Component.dispatchEventImpl(Unknown Source)
         at java.awt.Container.dispatchEventImpl(Unknown Source)
         at java.awt.Component.dispatchEvent(Unknown Source)
         at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
         at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
         at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
         at java.awt.Container.dispatchEventImpl(Unknown Source)
         at java.awt.Window.dispatchEventImpl(Unknown Source)
         at java.awt.Component.dispatchEvent(Unknown Source)
         at java.awt.EventQueue.dispatchEvent(Unknown Source)
         at java.awt.EventDispatchThread.pumpOneEventForHierarchy(Unknown Source)
         at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
         at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
         at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
         at java.awt.EventDispatchThread.run(Unknown Source)
    I do not understand what the problem is and wasting days to figure it out. Any help will be highly appreciated as my deadline is too close for this project.
    Thank you so much in advance.
    Neel

    Hi Cezar,
    Can u plz help me with this scenario?
    I have one Oracle data model with 19 source tables and one SQL Server data model with 10 target tables. I have created 10 interfaces which use JournalizedDataOnly on one of the tables in the interface; e.g in interface for DimCustomer target table, I have 2 tables, namely Customer and Address, but the journalizing filter appear only on Customer table and this option is disabled for Address automatically.
    Now I want to create a package using OdiWaitForLog event detection. Is it possible to put all these 10 interfaces in just one package to populate the target tables? It works fine when I have only one interface and I use the name of one table in the interface for Table Name parameter of OdiWaitForLogData event, but when I try a comma seperated list of table names[Customer, Address] this error happens
    java.sql.SQLException: ORA-00942: table or view does not exist
    and if I use this method <%=odiRef.getObjectName("L","model_code","logical_schema","D")%>, I get this error
    "-CDC_SET_NAME=Exception getObjectName("L", "model_code", "logical_schema", "D") : SnpLSchema.getLSchemaByName : SnpLschema does not exist" "
    Please let me know how to make it work?
    Do I need to create separate data models each including only those tables which appear in their corresponding interface and package? Or do I need to create multiple packages each with only one journalized interface to populate only one target table?
    Thank you for your time in advance.
    Regards,
    Neel

  • Move data from sql server v8  to oracle 10g

    I just got urgent projects to migrate the data from MS SQL server 2000 to oracle 10g. The following are requirements:
    Source data/table: MS sql server 2k (version 8) on MS 2000 machine.
    Destination Data/table: oracle 10g (10.1.0.4) on Redhat version 3.
    Total number of tables: < 10 tables and < 1000 rows each tables.
    This is only one time data extraction. No periodically data extraction need.
    Questions:
    What connect method I should use? (odbc or jdbc)
    What if I have image datatype?
    Thanks in advance.

    Use the Oracle Migration Workbench.
    http://www.oracle.com/technology/tech/migration/workbench/index.html
    I think IMAGE will be migrated to BLOB by default.
    Donal

  • Migration from of database and app from SQL server 2005 to Oracle 10g

    Hello Every body,
    Lately, I have been requested to migrate one inhouse developed hub application from SQL server 2005 to Oracle 10g. The objective is to move application and also the database to Oracel 10g.
    Here is the current platform:
    OS Win 2008 64 bit
    JDK 1.4.2
    JBoss 3.2.5
    EJB 2.1
    My question is what kind of issues you guys see in above upgrade. As far I know, Schema and Database migration can be done by Oracle workbench. Oracle 10g supports JDK 1.4. Oracle 10g also supports EJB 2.1.
    Anything, I need to take into consideration or any risks or problems. I would like to list down all the risks, and accordingly, I am thinking of start the upgrade.
    Thanks in advance.
    Regards,
    Zeeshan Qureshi

    In general the Java/J2EE application needs work in the following categories:
    1. Connection Settings: Use Oracle JDBC drivers, create new data sources, connection pools and what not. Disable AUTOCOMMIT for Oracle JDBC Connections.
    2. For EJBs, you should regenerate the entity beans because some object names/column names might have changed in oracle.
    3. Any custom SQL that is in use in the EJBs will have to be ported to Oracle just as you would do in stored procedures and other applications.
    4. For Java front-ends, if you are using callouts to stored procedures and expecting result sets then they will require some changes. You need to modify the stored procedure call signature to include the REF CURSOR variables and process them.
    5. Changes to any SQL Server specific database functions manipulating character/date data will be required.
    6. CLOB/BLOB/XML apis are different across databases so if you are using those then focus on them as well.
    7. Retreiving Auto/generated keys from database also may need changes from what I have seen.
    Hope this helps..
    Regards
    Prakash
    NOTE: Not sure why but my posts from yesterday are not visible today. Even worse is that I can see them in one browser (FireFox) but not in Internet explorer. Crazy browser day I am having.

  • Migration from SQL Server 2005 to Oracle 10g

    Dear buddies,
    I need to migrate my tables with data from SQL Server 2005 to Oracle 10g. How can I do it in the best possible way?
    Please guide me.
    Nith

    Nith,
    I doubt if there is one best practice that can cover all cases of migrating data from sql server to Oracle. l generally find various factors case-by-case that make me chose one approach over the other. Without considering the business case and environment specific factors, some of the things I would like to know would be: The data types of the tables columns, table sizes, number of tables and if this is a one time process or a recurring process.
    One of the easiest (some times rather pesky) process would be:
    -Dump source data (Sql Server data) into flat files, csv or any preferred format
    -Setup a set of staging set of tables in the destination DB (Oracle in your case). You can setup the stage tables to enforce data-types, value sets and even some level of integrity constraints or any data logic or what ever you would like to filter out. Load the flat file data into a set of Oracle stage tables (Sql*Loader would be a good candidate)
    -You can always move data from these stage tables to you application tables
    You can script this whole process to run as batch or on demand or how ever you would like.
    I am sure you can google and find a bunch of proprietary as well as open source tools to do the same with little to a lot of work.
    good luck!

  • Migrate tables from Ms SQL Server 20005 to Oracle 10g

    Hi all,
    I am trying to migrate 10 table from Ms SQL Server 2005 to Oracle 10g. I started creating a SSIS package to transfer them but it always fail when it tries to create the tables.
    Questions:
    - Is there any other way to import Ms SQL Server 2005 tables to Oracle
    - also I need to create a scirp that will update these tables periodically
    any ideas?
    Thanks

    YingKuan is right. jsut to expound a little further. This will also allow you to have have scripts which you can run again and again or even schedule them regularly too.
    B

  • I want to use Golden Gate to connect MS SQL Server 2005 with Oracle 10g dat

    I want to use Golden Gate to connect MS SQL Server 2005 with Oracle 10g database. So, i have installed both databases on different pc's on windows platform. MS SQL Server 2005 on windows XP and Oracle 10g on windows 2003.
    I have configure Golden Gate step by step by following oracle guideline:
    http://www.oracle.com/technetwork/articles/datawarehouse/oracle-sqlserver-goldengate-460262.html
    When i run following command on target (oracle 10g):
    replicat paramfile dirprm/inload.prm
    I encounterd following error:
    2012-05-21 20:27:06 ERROR OGG-00014 Unrecognized parameter: USERID. Paramete
    r could be misspelled or unsupported.
    2012-05-21 20:27:06 ERROR OGG-01668 PROCESS ABENDING.
    My INLOAD FILE Content are:
    SPECIALRUN
    END RUNTIME
    USERID gg_user, PASSWORD welcome1
    EXTFILE D:\oracle\gg\dirdat\ex
    SOURCEDEFS D:\oracle\gg\dirdef\emp.def
    MAP hrschema.emp, TARGET gg_user.emp;
    Can you plz suggest me that where i am wrong?
    Thanks advance to all experts.

    amardeep.sidhu wrote:
    That should work, just in case try adding DBLOGIN before USERID
    DBLOGIN USERID x..No needed in the param file i think.its not needed at all you are right, but what else could it be? Besides any special unseen character :P

  • How to block Sql Plus sessions in Oracle 10g

    Hi,
    I want to block all sql plus sessions in oracle 10g, as we have a application and we need each and every one to use this application not the sql plus session.
    Kindly update us as soon as possible. and also thanks in advanced.

    Understand the concept Karl, but a layered defense seldom works in the IP world. If I manage to get through the firewall, then how can you prevent me access, at IP level, at any other ISO stack layer? If you manage to get through, then your firewall policies could just be too weak :) at least you must have some kind of an IDS infrastructure in place..
    what I mean is, you can have infinite number of threats.. and this will be part of your Risk Analysis. Determining all possible threats to the assets, what are being protected and their associated value, and predicting the rate of occurrence.... with all of these you could probably come up with contingency plans and incident response.. And most of all, you should not ignore the fact that people are creative, ingenious, and curious, and they'll prove this to you by testing your security implementations. So you'll have to periodically evaluate your security.. that's why there are audits.. Also, you must balance Security, Performance, Usability, and your Budget.
    Yes, you can argue that if the entire firewall goes down (thus no IP defense), then something like DBV (or even denying IPs in sqlnet) can provide some defense. But is that not then a case of too little too late? It's better too little too late, than no protection at all... Imagine if there's no DBV, or if you have not implemented the concept of "Least Privilege"? or if the backups and exports are not encrypted? That would be more devastating.. that's the importance of database security options and features in providing "defense in depth"
    I question just what purpose and how effective IP packet security is at higher layers. It can never substitute doing this instead at firewall level. Well, it's not all about network security. All facets must be considered and the inter-relationships should be understand. Like the core information security and access management, physical and personnel security, training them, etc... And all of these are equally important in providing a secure ecosystem
    As for security that relies on the client to pass secure data (like executable name or o/s user name)... all this can easily be spoofed. Even if the app and Oracle driver are somehow digitally signed and these signatures can be verified on the server side, we only need to look at Vista to see how secure this really would be. Microsoft attempted to encrypt every single h/w and s/w layer from the physical DVD track to the pixel on the monitor.. and this was defeated. And this was done as o/s kernel level. It is less complex to hack at driver level and even trivial to do it at application level.Security is about risk management. Blocking SQL*Plus does not negate the risk of SQL from the wild being run on a production server. For example, the client is a VB client using ODBC. It is easy to create a proxy that accepts the ODBC connection from the VB client and proxy the OCI packets to the real Oracle server. Now you have a man-in-the-middle than can inspect every single SQL call made to Oracle, and inject any PL/SQL or SQL code it wants.
    Security is far beyond writing a login trigger to deny SQL*Plus sessions and calling that a defense. >
    Yes I agree with you. That's why there are independent organizations and regulating bodies that provides security best practices, to give us a headstart on comming up of strong security policies.
    And one of my favorites is the one provided by IASE (sponsored by Defense Information Systems Agency) where there's lot of content regarding hardening and policies
    http://iase.disa.mil/stigs/stig/index.html
    http://iase.disa.mil/stigs/checklist/index.html
    http://iase.disa.mil/stigs/SRR/index.html
    - Karl Arao
    http://karlarao.wordpress.com

  • Migration from SQL SERVER 2008 to Oracle 10g issues.

    Hi ,
    I'm trying to migrate from SQL Server 2008 to Oracle 10g and I end up with some issues that I wanted to ask some info about it.
    First, I was following a tutorial
    http://st-curriculum.oracle.com/obe/db/hol08/sqldev_migration/mssqlserver/migrate_microsoft_sqlserver_otn.htm
    and and in the last version of Oracle SQL developer I downloaded, I didn't find the Load Database Capture Script Output option.
    My first question is how can I either add this option or is there a new way to load the capture script ?
    Then I use the migration wizard and after following everything, I had the migration complete message from the application.
    When I tried to open my connectionss, it tells me version 11.2 is required. Does that mean that Oracle SQL developper 3 only
    do the migration for oracle 11g? And if I tried the previous versions, it doesn't support SQL server 2008.
    What do I do in this case ?
    Thanks !

    Thank you for your reply.
    After using the wizard and made the offline migration script, in the Migration projects window I made a move data to the oracle connection I previously made and after when I tried to reopen the connection, I couldn't.
    Well I didn't retry it yet to see if I'll have the same behavior but basically this is what I think I did. When I tried to open the connection I made, it says, Oracle 11.2 is required.
    Now, I just generate target from the convert model and it says migration complete but how do I test it and I do I go to oracle and see change ?
    Do I had to create a special user in SQL Server to log to it first ? How do I logon to it ?
    Edited by: 873671 on Jul 20, 2011 7:03 AM
    Edited by: 873671 on Jul 20, 2011 7:19 AM

  • Trying to migrate SQL Server 2000 to Oracle 10g.

    Hi.
    I´m trying to migrate from Sql Server 2000 to Oracle 10g and I got some troubles.
    I have connected both databases with my Oracle Sql Server, after that I went to the Menu--> Migrate--> Fast Migration and then fill all the steps necesary.
    I can see the repository`s table at the oracle schema but after that the Sql Developer hang at the point "capture". I let the tool work for 2 hours and nothing to do. It´s not a hughe db so could be done faster.
    May I miss something?.
    Thanks.

    Hi
    I also have similar issue when trying to migrate from MS SQL 2005 to oracle 10g.
    I use the SQL Developer Version 2.1.0.63.
    First, I tried to use 'Quick Migration' then it created repository then stop there with error message
    "Error ocurred during capture: ORA-01400: cannot insert NULL into ("DDHCOWNER"."MD_PROJECTS"."ID")"
    Then, try manual way to capture SQL server, but some how it doesn't work. It just refresh IDE and stop.
    Before this activity, I tried to migrate MS SQL 2005 using 'Quick Migration' and it works. But this time I have to do it on another DB then this happened.
    So I re-try the previous connection then encountered the same to all.
    Thus, please kindly help to advice how to solve this problem.
    Thank you so much.
    Regards,
    Sai Lin Naung

  • What i need to have to run oracle 10g on win 2000 server.

    hi,
    I want to install oracle 10g on win 2000 server,what should I need to do to install oracle 10g.
    thanks Alok kumar

    Hi...
    Try check http://tahiti.oracle.com
    There are complete documentation and also installation guide for Windows where pre-requisites are included.

  • Connect to MS-SQL Server from a Oracle 10g running under Solaris

    Hi,
    I have the following problem. I want to access a MS-SQL server from an Oracle database (10g Enterprise licence) that is running on Solaris.
    After googling a while, the following questions arise:
    - Is it correct that the Oracle Transparant Gateway for the SQL Server is not available on Solaris platforms (but only on Windows)?
    - Is it right, that the second possibility to solve this problem is to use an SQL-Server odbc driver for Solaris and access the SQL-Server over ODBC? And: Is this feature included in the Enterprise licence?
    - If yes, which driver is good and cheap ;-)?
    - Is there any other way to solve this problem?
    Thanks
    Aron
    Message was edited by:
    user583720

    I believe the Transparenet Gateway for SQL Server is available on Solaris. The problem is that you need a Unix based ODBC driver which you will also need to pay for.
    We had this same problem and decided to run a windows based Heterogeneous Services gateway and routed through it instead of using the SQL Server transparent gateway. The Heterogenous severives gateway is NOT an add on product (as is Transparent Gateway). The drawback would be performance as I would expect the native MS SQL transparent gateway to perform better, but in our case it worked acceptably.

  • PL/SQL Introspection - USER_IDENTIFIERS in Oracle 10g

    USER_IDENTIFIERS is a new view as of 11g that will show profile info about stored PL/SQL. For more info, see Tom Kyte's article here:
    http://www.oracle.com/technology/oramag/oracle/07-nov/o67asktom.html
    I need to replicate part of that functionality in Oracle 10g. Specifically, I need to introspect PL/SQL package bodies and query the starting and ending line numbers for their procedures and functions. Based on a pattern by Nigel Thomas, have constructed the query below. Does anyone have a better way to get that information?
    SELECT package_name, object_name program_unit_name,
           progtype program_unit_type, startline start_line,
           DECODE(endline, startline,
                  pkg_last_line, NVL(endline, pkg_last_line)) end_line 
    FROM   (
           SELECT  arg.package_name, arg.progtype, arg.object_name,
                   pkg_body.line startline,
                   LEAD(pkg_body.line) OVER (ORDER BY arg.package_name,
                           pkg_body.line) endline,
                   ( SELECT MAX(line) FROM user_source
                     WHERE  type = 'PACKAGE BODY'
                     AND name = arg.package_name
                   ) pkg_last_line, text
           FROM    (
                      SELECT   package_name, object_name,
                               DECODE(MIN(position),
                                      0, 'FUNCTION',
                                      'PROCEDURE') progtype
                      FROM     user_arguments
                      WHERE    package_name IS NOT NULL
                      GROUP BY package_name, object_name
                   ) arg,
                      SELECT *
                      FROM user_source
                      WHERE type = 'PACKAGE BODY'
                   )  pkg_body
                   WHERE pkg_body.name = arg.package_name
                   AND
                       -- Remove carraige return and line feeds from end of line
                       -- Match declaration of function or procedure. Pad with a
                       -- space to delimit the program unit name. (Some names start
                       -- with the same characters.)
                       -- Allow program unit to be defined with a trailing space or a (
                       -- Assumption: program unit type (FUNCTION, PROCEDURE) and
                       -- name must be on the same line and must be the first thing
                       -- on the line.
                       LTRIM(REPLACE(REPLACE(REPLACE(UPPER(pkg_body.text),CHR(10),''),
                                  CHR(13),'' ),CHR(9), '' )) ||' ' LIKE
                             arg.progtype || '% ' || arg.object_name || ' %'                           
                       OR
                       LTRIM(REPLACE(REPLACE(REPLACE(UPPER(pkg_body.text),CHR(10),''),
                                  CHR(13),''),CHR(9), ''))  ||' ' LIKE
                             arg.progtype || '% ' || arg.object_name || '(%'                           
                   -- Filter out single line comment lines that contain the program
                   -- unit type and name
                   AND SUBSTR(TRIM(pkg_body.text), 1, 2) != '--'
                   -- Filter out lines like multi-line comments that have the
                   -- program unit type and program unit name on the same line.
                   -- Remove tabs and spaces for the concatenation.
                   AND REPLACE(REPLACE(UPPER(pkg_body.text), ' ', ''), CHR(9), '') 
                         LIKE arg.progtype || arg.object_name || '%'
                   -- Filter out lines that contain PL/SQL statements
                   AND pkg_body.text NOT LIKE '%;%'
    );Thanks,
    Peter

    Additionally, don't rely on implicit type conversions which may give unexpected results depending on your session settings
    DBMS_OUTPUT.PUT_LINE('TODAY IS '||to_char(TODAY, 'DD.MM.YYYY'));

  • Migrating from SQL Server 2000 to Oracle 10g

    Hello,
    I am a newbie to Oracle 10g and haven't really worked with Oracle since 8i. I have been tasked to migrate all of our databases and tables to Oracle 10g. I need a little help getting started or pointed in the right direction on how to copy all that data from SQL Server to Oracle 10g. I know that Oracle has an Import/Export Utility, but don't know if it can do what I need. Can some one help point me in the direction I need?
    Thanks, Marion

    Ayub
    You need to download both the Oracle Migration Workbench core tool and the SQL Server 2000 plugin (SQLserver2k.jar). You copy the plugin into the plugin directory, after you unzip the Oracle Migration workbench main.
    The tool comes with release notes and a user guide, that explains the necessary setup and migration process.
    Donal

Maybe you are looking for

  • Full path mapping not working for Taxonomy values

    Hi Friends, I'm trying to update a main table field, which is of type Lookup [Taxonomy]. The taxonomy table has a 5-level hierarchy, with two columns, Code (Display Field 1) and Name (Display Field 2). There are no attributes maintained. 001, A   [Re

  • My movies no longer show up in the clouds

    I use to be able to stream all my movies from my itunes without downloading them. I went to my itunes and they were all gone. Does anyone know how to get them back? I hate taking up spacee on my computer and I own so many movies

  • Why does the print cue window stay open even after job is done?

    In Tiger, and every other version of OSX I have any recollection of using, the printer window opens to display what's in the cue when you select to print something. Once printing is done, this cue closes. Since installing Leopard, everytime we print

  • Problem in using tax code

    hi Gurus, m facing very different problem from yesterday. The day b4 all tax codes were working finely bur nw they are showing error in calculation. e.g. if i m using tax code with 14%BED, 2%ECess, 1%SEcess, 4%VAT. But when entering in PO conditions,

  • Excess Value Credited In LIAB GRR-EXP IMPORT While Doing Import PO MIGO

    We Have Created Import PO. Done Custm MIRO. Also Done MIGO. But For Some OF The Items   Agency Charges Were Automatically Fetched From Info Records. And Thus Those Values Are Credited To LIAB GRR-EXP IMPORT. Please Suggest.