Generating schema upgrade scripts

On our project we're currently using Apache Torque Generator to create schema installation scripts for Oracle, MS SQL Server and DB2 with great success. However, making alterations to the schema and capturing these alterations in patch scripts is still a very manual process.
Does anyone know of any open source tools that can help with this task? Either by automatically generating the patch scripts (based on comparison of two schemas), or by using some other means of upgrading (such as a java process that runs and makes changes programmatically). The scripts generated (or process run) would ideally be idempotent.
Cheers,
Joe

Take a look at TOAD -quest software-.
There is a Free edition abvailable where you can do a schema compare from which TOAD generates the SQL.
I only use it for Oracle, never looked into using it for MySQL or DB2 so don't know about that.
Message was edited by:
mTeigeler

Similar Messages

  • SQL Server CE 3.5 SP2 - SQLCE Toolbox / Automated Database Schema Upgrade Scripting / Drop Index

    I am provisioning for automated database schema upgrades in a Windows Forms Application (VS2010/VB) which uses SQL Server Compact 3.5 SP2.  A portion of the schema upgrade procedure uses TSQL commands passed to SQLCE like the following:
    cmd.CommandText = "DROP INDEX [SaleComps$ProjID]"
    cmd.ExecuteNonQuery()
    However, when this command is processed by the SQLCE engine, I get the following error:
    Command: DROP INDEX [SaleComps].[ProjID]
    Error: The specified index does not exist. [ ProjID ]
    But, if I try to recreate the index (or try to change the index column) I get the following errors which indicate that the index is still there:
    Command: ALTER TABLE [SaleComps] ALTER COLUMN [ProjID] nvarchar(20) NULL
    Error: Cannot alter a column that is part of a key or an index. [ Index Name = SaleComps$ProjID,Column = ProjID ]
    Command: CREATE INDEX "SaleComps$ProjID" ON "SaleComps" ("ProjID" ASC)
    Error: The specified index already exists. [ SaleComps$ProjID ]
    Any ideas why this would not be working? Thanks!
    -BGood

    No, I was guessing at the syntax from reviewing other web postings, some of which were in different SQL dialects. 
    While your SQLCE Toolbox did not provide the DROP INDEX command, it did provide most of the "Schema Diff" scripting commands.  In hindsight, maybe SQLCE Toolbox should recognize when schema differences involve a Column which is used in an index, and
    DROP the index before executing the ALTER COLUMN command, then re-CREATE the index with the modified column.
    Despite this shortcoming, I am very thankful for the help provided by SQLCE Toolbox, and learned a little more about SQL scripting in the process.
    Thanks, ErikEJ!
    -BGood

  • Serious Error when generating UPGRADE scripts

    The following runtime service log is generated when we try to generate UPGRADE scripts for a dimension that changed:
    14:10:32 [5E3974] Runtime Platform Service Version 9.2.0.2.8 starting
    14:10:32 [5E3974] Platform Repository Name OWB_RUNTIME_MGR on Service UTIDWHQ1 at Host localhost
    14:10:32 [5E3974] Recovery starting
    14:10:32 [5E3974] Service startup complete
    14:15:52 [5E3974] AuditId=8171: Processing unit deployment request
    14:15:52 [228A02] Attempting to create adapter 'class.Oracle Database.9.2.DDLDeployment'
    14:15:52 [228A02] script_run_begin auditId=8173 operation=9001
    14:15:59 [228A02] script_run_end auditId=8181 scriptRunStatus=15002
    14:16:00 [228A02] deploy_unit_done auditId=8171
    14:16:00 [5E3974] AuditId=8170: Request completed
    14:27:48 [5E3974] AuditId=8183: Processing unit deployment request
    14:27:48 [1173EF] Attempting to create adapter 'class.Oracle Database.9.2.DDLDeployment'
    14:27:48 [1173EF] script_run_begin auditId=8185 operation=9001
    14:27:53 [1173EF] script_run_end auditId=8193 scriptRunStatus=15002
    14:27:54 [1173EF] deploy_unit_done auditId=8183
    14:27:54 [5E3974] AuditId=8182: Request completed
    14:32:56 [5E3974] AuditId=8194: Processing execute request
    14:32:57 [4EC44] Attempting to create adapter 'class.RuntimePlatform.0.NativeExecution'
    14:32:57 [4EC44] Attempting to create native operator 'class.RuntimePlatform.0.NativeExecution.PLSQL'
    14:32:57 [4EC44] PLSQL callspec: declare l_env wb_rt_mapaudit.wb_rt_name_values;function bool_to_char (val boolean) return varchar2 is begin if (val is null) then return null; else if (val) then return 'true'; else return 'false'; end if; end if; end; begin l_env(1).param_name := 'AUDIT_ID'; l_env(1).param_value := 8194; l_env(2).param_name := 'OPERATING_MODE'; l_env(2).param_value := '2'; l_env(3).param_name := 'PURGE_GROUP'; l_env(3).param_value := 'wb'; l_env(4).param_name := 'MAX_NO_OF_ERRORS'; l_env(4).param_value := '50'; l_env(5).param_name := 'COMMIT_FREQUENCY'; l_env(5).param_value := '50000'; l_env(6).param_name := 'AUDIT_LEVEL'; l_env(6).param_value := '2'; l_env(7).param_name := 'BULK_SIZE'; l_env(7).param_value := '50000'; ? := MAP_GET_HB.main(p_env=>l_env);end;
    14:35:50 [4EC44] report_execution_result auditId=8194
    14:35:50 [5E3974] AuditId=8194: Request completed
    14:36:49 [5E3974] AuditId=8203: Processing unit deployment request
    14:36:49 [341960] Attempting to create adapter 'class.Oracle Database.9.2.DDLDeployment'
    14:36:50 [341960] script_run_begin auditId=8205 operation=9001
    14:36:55 [341960] script_run_end auditId=8213 scriptRunStatus=15002
    14:36:55 [341960] deploy_unit_done auditId=8203
    14:36:56 [5E3974] AuditId=8202: Request completed
    14:37:39 [5E3974] AuditId=8214: Processing execute request
    14:37:39 [233D48] Attempting to create adapter 'class.RuntimePlatform.0.NativeExecution'
    14:37:39 [233D48] Attempting to create native operator 'class.RuntimePlatform.0.NativeExecution.PLSQL'
    14:37:39 [233D48] PLSQL callspec: declare l_env wb_rt_mapaudit.wb_rt_name_values;function bool_to_char (val boolean) return varchar2 is begin if (val is null) then return null; else if (val) then return 'true'; else return 'false'; end if; end if; end; begin l_env(1).param_name := 'AUDIT_ID'; l_env(1).param_value := 8214; l_env(2).param_name := 'OPERATING_MODE'; l_env(2).param_value := '2'; l_env(3).param_name := 'PURGE_GROUP'; l_env(3).param_value := 'wb'; l_env(4).param_name := 'MAX_NO_OF_ERRORS'; l_env(4).param_value := '50'; l_env(5).param_name := 'COMMIT_FREQUENCY'; l_env(5).param_value := '50000'; l_env(6).param_name := 'AUDIT_LEVEL'; l_env(6).param_value := '2'; l_env(7).param_name := 'BULK_SIZE'; l_env(7).param_value := '50000'; ? := MAP_GET_HB.main(p_env=>l_env);end;
    14:39:55 [233D48] report_execution_result auditId=8214
    14:39:55 [5E3974] AuditId=8214: Request completed
    14:49:57 [5E3974] AuditId=8223: Processing unit deployment request
    14:49:57 [7EBE1] Attempting to create adapter 'class.Oracle Database.9.2.DDLDeployment'
    14:49:57 [7EBE1] script_run_begin auditId=8225 operation=9001
    14:50:02 [7EBE1] script_run_end auditId=8233 scriptRunStatus=15002
    14:50:03 [7EBE1] deploy_unit_done auditId=8223
    14:50:03 [5E3974] AuditId=8222: Request completed
    14:50:27 [5E3974] AuditId=8235: Processing unit deployment request
    14:50:27 [7A8A02] Attempting to create adapter 'class.Oracle Database.9.2.DDLDeployment'
    14:50:27 [7A8A02] script_run_begin auditId=8237 operation=9001
    14:50:33 [7A8A02] script_run_end auditId=8245 scriptRunStatus=15002
    14:50:34 [7A8A02] deploy_unit_done auditId=8235
    14:50:34 [5E3974] AuditId=8234: Request completed
    14:51:06 [5E3974] AuditId=8246: Processing execute request
    14:51:06 [6C6696] Attempting to create adapter 'class.RuntimePlatform.0.NativeExecution'
    14:51:06 [6C6696] Attempting to create native operator 'class.RuntimePlatform.0.NativeExecution.PLSQL'
    14:51:06 [6C6696] PLSQL callspec: declare l_env wb_rt_mapaudit.wb_rt_name_values;function bool_to_char (val boolean) return varchar2 is begin if (val is null) then return null; else if (val) then return 'true'; else return 'false'; end if; end if; end; begin l_env(1).param_name := 'AUDIT_ID'; l_env(1).param_value := 8246; l_env(2).param_name := 'OPERATING_MODE'; l_env(2).param_value := '3'; l_env(3).param_name := 'PURGE_GROUP'; l_env(3).param_value := 'wb'; l_env(4).param_name := 'MAX_NO_OF_ERRORS'; l_env(4).param_value := '50'; l_env(5).param_name := 'COMMIT_FREQUENCY'; l_env(5).param_value := '50000'; l_env(6).param_name := 'AUDIT_LEVEL'; l_env(6).param_value := '2'; l_env(7).param_name := 'BULK_SIZE'; l_env(7).param_value := '50000'; ? := MAP_GET_HB.main(p_env=>l_env);end;
    15:35:44 [6C6696] report_execution_result auditId=8246
    15:35:44 [5E3974] AuditId=8246: Request completed
    11:07:43 [5E3974] AuditId=8255: Processing unit deployment request
    11:07:44 [73A7AB] Attempting to create adapter 'class.Oracle Database.9.2.CMUpgrade'
    11:07:44 [73A7AB] java.lang.NullPointerException
         at oracle.wh.runtime.platform.adapter.odb.OdbCMUpgradeAdapter.prepare(OdbCMUpgradeAdapter.java:222)
         at oracle.wh.runtime.platform.service.controller.DeploymentController.prepare(DeploymentController.java:101)
         at oracle.wh.runtime.platform.service.controller.DeploymentController.prepare(DeploymentController.java:27)
         at oracle.wh.runtime.platform.service.DeploymentManager.run(DeploymentManager.java:41)
         at java.lang.Thread.run(Unknown Source)
    11:07:44 [73A7AB] java.lang.UnsatisfiedLinkError: /opt/oracle/product/rdbms/9.2.0/lib/libocijdbc9.sl: specified file is not a shared library, or a format error was detected.
         at java.lang.ClassLoader$NativeLibrary.load(Native Method)
         at java.lang.ClassLoader.loadLibrary0(Unknown Source)
         at java.lang.ClassLoader.loadLibrary(Unknown Source)
         at java.lang.Runtime.loadLibrary0(Unknown Source)
         at java.lang.System.loadLibrary(Unknown Source)
         at oracle.jdbc.oci8.OCIDBAccess.logon(OCIDBAccess.java:265)
         at oracle.jdbc.driver.OracleConnection.<init>(OracleConnection.java:360)
         at oracle.jdbc.driver.OracleDriver.getConnectionInstance(OracleDriver.java:521)
         at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:325)
         at java.sql.DriverManager.getConnection(DriverManager.java:512)
         at java.sql.DriverManager.getConnection(DriverManager.java:141)
         at oracle.sysman.vdb.VdbSession.establishConnection(VdbSession.java:1266)
         at oracle.sysman.vdb.VdbSession.<init>(VdbSession.java:763)
         at oracle.sysman.vdb.VdbAutoCommitSession.<init>(VdbAutoCommitSession.java:266)
         at oracle.sysman.vdb.VdbSessionFactory.getNewAutoCommitSession(VdbSessionFactory.java:1206)
         at oracle.sysman.vdb.VdbSessionFactory.getAutoCommitSession(VdbSessionFactory.java:1118)
         at oracle.sysman.cmSDK.CMClient.<init>(CMClient.java:243)
         at oracle.wh.runtime.platform.adapter.odb.OdbCMUpgradeAdapter.getCMClient(OdbCMUpgradeAdapter.java:775)
         at oracle.wh.runtime.platform.adapter.odb.OdbCMUpgradeAdapter.prepare(OdbCMUpgradeAdapter.java:81)
         at oracle.wh.runtime.platform.service.controller.DeploymentController.prepare(DeploymentController.java:101)
         at oracle.wh.runtime.platform.service.controller.DeploymentController.prepare(DeploymentController.java:27)
         at oracle.wh.runtime.platform.service.DeploymentManager.run(DeploymentManager.java:41)
         at java.lang.Thread.run(Unknown Source)
    11:07:44 [73A7AB] oracle.wh.runtime.platform.service.controller.RecoveryInProgress: RPE-01008: Recovery of this request is in progress.
         at oracle.wh.runtime.platform.service.controller.AdapterContextImpl.initialize(AdapterContextImpl.java:974)
         at oracle.wh.runtime.platform.service.controller.DeploymentContextImpl.initialize(DeploymentContextImpl.java:434)
         at oracle.wh.runtime.platform.service.controller.DeploymentController.initialize(DeploymentController.java:69)
         at oracle.wh.runtime.platform.service.controller.DeploymentController.prepare(DeploymentController.java:95)
         at oracle.wh.runtime.platform.service.controller.DeploymentController.prepare(DeploymentController.java:114)
         at oracle.wh.runtime.platform.service.controller.DeploymentController.prepare(DeploymentController.java:27)
         at oracle.wh.runtime.platform.service.DeploymentManager.run(DeploymentManager.java:41)
         at java.lang.Thread.run(Unknown Source)
    11:07:44 [73A7AB] Attempting to create adapter 'class.Oracle Database.9.2.CMUpgrade'
    11:07:44 [73A7AB] java.lang.NullPointerException
         at oracle.wh.runtime.platform.adapter.odb.OdbCMUpgradeAdapter.prepare(OdbCMUpgradeAdapter.java:222)
         at oracle.wh.runtime.platform.service.controller.DeploymentController.prepare(DeploymentController.java:101)
         at oracle.wh.runtime.platform.service.controller.DeploymentController.prepare(DeploymentController.java:114)
         at oracle.wh.runtime.platform.service.controller.DeploymentController.prepare(DeploymentController.java:27)
         at oracle.wh.runtime.platform.service.DeploymentManager.run(DeploymentManager.java:41)
         at java.lang.Thread.run(Unknown Source)
    11:07:44 [73A7AB] java.lang.UnsatisfiedLinkError: /opt/oracle/product/rdbms/9.2.0/lib/libocijdbc9.sl: specified file is not a shared library, or a format error was detected.
         at java.lang.ClassLoader$NativeLibrary.load(Native Method)
         at java.lang.ClassLoader.loadLibrary0(Unknown Source)
         at java.lang.ClassLoader.loadLibrary(Unknown Source)
         at java.lang.Runtime.loadLibrary0(Unknown Source)
         at java.lang.System.loadLibrary(Unknown Source)
         at oracle.jdbc.oci8.OCIDBAccess.logon(OCIDBAccess.java:265)
         at oracle.jdbc.driver.OracleConnection.<init>(OracleConnection.java:360)
         at oracle.jdbc.driver.OracleDriver.getConnectionInstance(OracleDriver.java:521)
         at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:325)
         at java.sql.DriverManager.getConnection(DriverManager.java:512)
         at java.sql.DriverManager.getConnection(DriverManager.java:141)
         at oracle.sysman.vdb.VdbSession.establishConnection(VdbSession.java:1266)
         at oracle.sysman.vdb.VdbSession.<init>(VdbSession.java:763)
         at oracle.sysman.vdb.VdbAutoCommitSession.<init>(VdbAutoCommitSession.java:266)
         at oracle.sysman.vdb.VdbSessionFactory.getNewAutoCommitSession(VdbSessionFactory.java:1206)
         at oracle.sysman.vdb.VdbSessionFactory.getAutoCommitSession(VdbSessionFactory.java:1118)
         at oracle.sysman.cmSDK.CMClient.<init>(CMClient.java:243)
         at oracle.wh.runtime.platform.adapter.odb.OdbCMUpgradeAdapter.getCMClient(OdbCMUpgradeAdapter.java:775)
         at oracle.wh.runtime.platform.adapter.odb.OdbCMUpgradeAdapter.prepare(OdbCMUpgradeAdapter.java:81)
         at oracle.wh.runtime.platform.service.controller.DeploymentController.prepare(DeploymentController.java:101)
         at oracle.wh.runtime.platform.service.controller.DeploymentController.prepare(DeploymentController.java:114)
         at oracle.wh.runtime.platform.service.controller.DeploymentController.prepare(DeploymentController.java:27)
         at oracle.wh.runtime.platform.service.DeploymentManager.run(DeploymentManager.java:41)
         at java.lang.Thread.run(Unknown Source)
    11:07:44 [73A7AB] prepare_unit_done auditId=8255
    11:07:44 [5E3974] AuditId=8254: Request completed

    Hi Marlene,
    It looks like the cause of your issue is
    11:07:44 [73A7AB] java.lang.UnsatisfiedLinkError: /opt/oracle/product/rdbms/9.2.0/lib/libocijdbc9.sl: specified file is not a shared library, or a format error was detected
    Can you let us know what platform you run on? Is the environment correctly set up?
    Thanks,
    Mark.

  • How to script schema upgrade as single success unit

    We currently use a combination of Ingres and SQL Server databases. When upgrading a schema of our own design we will script the upgrade as a single success unit. If any part fails then the whole lot is rolled back. (This is a slight simplification but it's the general principle we follow). However in Oracle I believe DDL statements are automatically committed. This is thwarting our attempts to adopt the same approach with Oracle.
    As a simple example say a column is being moved from one table to another (for whatever reason). The application changes to be implemented depend on three things happening:
    1. table_new has column_new added to it
    2. column_new on table_new is populated from column_old on table_old
    3. table_old has column_old dropped from it
    so the upgrade script will run something like:
    Start Transaction
    alter table table_new add column_new(etc... ;
    update table_new set column_new = (select column_old from table_old etc.... ;
    alter table_old drop column_old ;
    If Error then
    Rollback
    Else
    Commit Transaction
    This way if there is an error then the database is left in a state that works with the old application code. If the upgrade succeeds then the new application code can implemented.
    So my questions are:
    1. Am I correct in thinking that in Oracle, step 1 above will commit as soon as it's submitted preventing rollback?
    2. If so then what would people recommend as a way to achieve a single success unit for a schema upgrade?
    We were hoping to use flashback with restore points to perform the equivalent of a rollback if there were any errors in the upgrade script. Having tried that this afternoon though, I received an error about being unable to flashback the table because it had been changed (don't have the error here I'm afraid as I'm at home now). Would restoring the tablespace (we are setting up one tablespace per schema) to a point in time before the upgrade script started be reasonable? It seems a little extreme and also considerably more difficult to script than the flashback option. Otherwise I'm thinking that some combination of creating a new table, populating it, dropping the old table, renaming the new table with the original name might be an option. However this obviously has much greater overheads, higher chance of error and considerably more messing about if constraints, rules and procedures are involved.
    Any suggestions or corrections on what I've added above are appreciated.
    thanks
    Mark

    Thanks for the responses.
    Unfortunately this will always be a case of altering the schema rather than creating it once applications are running against Oracle.
    Tablespace point in time recovery is probably looking like the best option so far. A script would only ever upgrade one schema at a time and we're setting things up to use one tablespace per schema.
    Proving and then rehearsing a TSPITR (as I believe it's called) is on the list of things that we need to do but it seems like it may be needed as a more routine tool than just in emergencies. I shall concentrate my reading in that direction. Would anybody care to offer any opinions on automating restores for this situation? We have people on call but generally only plan to come in out of hours to check the outcome of big upgrades. Smaller schema upgrades are left to pass or rollback overnight.
    It's a real shame that flashback works at the database and table levels but does not have a tablespace option as that would be perfect. Flashing back the whole database could be problematic as we will probably end up with multiple schemas in each database, each one being used by different applications so we could realistically have applications running against some schema_a whilst we're upgrading schema_b. Flashing back the whole database would obviously then cause problems in schema_a, or schema_a or the associated application would have to be suspended while we upgraded schema_b. Whilst we're lucky enough to have some downtime with most of our applications, this is gradually disappearing and there are some which are now approaching 24/7 availability.
    I'm still open to other suggestions though. This seems so much more complicated than the approach which has worked for Ingres and SS. Do you apply schema changes whilst the system is running? Does somebody do this manually or is it scheduled?
    thanks again
    Mark

  • How to generate the DDL script of all the schema objects.

    Hi All,
    I just wanted to make centralized repository for Oracle database and to create a base version, I need to create the DDL scripts of all the database objects so that i can check in the same ddl scripts (sql) files in to my central repository.
    I need do this schedule job which will generate the ddl scripts once in a month(This should be automated process)
    Please help me out about this.
    Oracle version - 9i
    Thanks in advance.
    Thanks,
    Santosh
    Edited by: Santosh_Oracle on Feb 23, 2011 10:26 PM

    It is definitely possible to revise the script.
    Look at it, you already have 80 percent of it for free, and you didn't even need to Google.
    Just ask a FAQ in a forum loaded with FAQs!
    And Toad can save everything to one script per object.
    Sybrand Bakker
    Senior Oracle DBA

  • 11g upgrade script gen_inst.sql fails to export all users

    I'm trying to upgrade a database from 10g XE to 11g XE; however, the upgrade script gen_inst.sql that's included with the installation media fails to include all of the database users in the sql file it generates. Out of 33 users, only 3 are included in the ws.sql file that is created. I can't seem to find any difference between the users that are included and those that are missed, all have the same roles and default tablespaces, but I'm new to Oracle XE so I might be missing something. Does anyone know why the script might miss certain users?

    The homepage says its Application Express 2.1.0.00.39.
    If I'm understanding this correctly there should still be more than 3 schema owners, for example when I run the query "select distinct owner from dba_tables" I see the rest of the users that I was expecting.
    When I imported the data onto the 11g server (using impdp) I can see in the logs that it's importing the other schemas (e.g. imported "MP_DOC"."TEXT" ... in this case MP_DOC does not show up in the list of workspaces or users after running the install.sql script, but MP_DOUG does, and from what I can see they both should be there).
    My apologies if I'm not being clear or understanding this right.

  • NEW 9iAS PORTAL UPGRADE SCRIPTS NOW AVAILABLE

    Based on detailed customer and internal feedback, Oracle9iAS Portal Product Development is now making available NEW and significantly IMPROVED versions of the 9iAS Portal Upgrade Scripts as of 4/20/2001.
    [list]
    [*]Oracle9iAS Portal Upgrade Scripts (2.2/3.0.3.3.3 -> 3.0.6) for Windows NT
    [*]Oracle9iAS Portal Upgrade Scripts (2.2/3.0.3.3.3 -> 3.0.6) for Solaris
    [list]
    The upgrade scripts provided here (at the links above) will allow you to upgrade the following environments:
    a) Your existing WebDB 2.2 installations to Oracle9iAS Portal 3.0.6.
    b) Your existing Oracle Portal Early Adopters Release (3.0.3.3.3) to Oracle9iAS Portal 3.0.6.
    For specific upgrade documentation (also updated!), please consult the links below:
    [list]
    [*]Release notes for Oracle9iAS Portal 3.0.6 Upgrade
    [*]Oracle9iAS Portal Upgrade Guide for NT/2000
    [*]Oracle9iAS Portal Upgrade Guide for Solaris
    [list]
    NOTE: For the final step of the upgrade process, you will also need to download additional upgrade scripts to take you from Oracle9iAS Portal 3.0.6 to the current 3.0.8.9.8 Oracle9iAS Portal release.
    NOTE: Scripts and Doc for the 9iAS Portal 3.0.6 to 3.0.8 Upgrade are expected to be made available later this week (April 24-27)
    The following is a list of bugs and issues addressed with the latest 9iAS Portal 3.0.6 upgrade scripts.
    Upgrade Bugs Fixed for the 2.2 -> 3.0.6 upgrade
    1697813 - NT SCRIPT IS ASKING FOR VALUES 3 AND 4
    1697862 - APPIMP.CSH
    1697863 - UNEXPECTED ERROR ENCOUNTERED ERRORS OCCURED IN APPIMP.CSH
    1697828 - SB: MISSING LINKS FOR THE FOR ITEMS
    1697781 - MIGRATION FAILED
    1714261 : APPLICATION IMPORT SCRIPT FAILS
    1716379 : IMPORT SCRIPT TERMINATES ABNORMALLY
    1712877 : EXPORTING A APPLICATION FAILS
    1715551 : NO ACTION LINKS FOR LOVS WHEN IMPORTED FROM WEBDB SCHEMA !!
    1740211 : AFTER UPGRADE EDITING THE SCHEMA GIVING ERROR
    1697795 - MISSING TEMPLATE AFTER UPGRADE (DOC BUG)
    1697839 - 22-306:DOC: NEEDS TO DOCUMENT
    1697835 - 22-306:DOC: NEEDS TO DOCUMENT
    Additional Bug Fixes
    1703032 - IMPROVE PERFORMANCE FOR THE FOLDER IN EDIT-MODE.
    1703040 - EDIT LINKS APPEAR ON FOLDERS EVEN THOUGH USER DOES NOT HAVE PRIVILEGES.
    1703052 - SUBFOLDERS UNDER THE FOLDERS NOT ALIGNED PROPERLY
    1703063 - PERSPECTIVE PAGE RENDERS SLOWLY
    1703070 - NAVBAR LOGON/LOGOFF LINKS IS HARDCODED TO GO THE CONTENT AREA ROOT FOLDER
    1703072 - NAVBAR LOGON/LOGOFF LINKS DOES NOT WORK FOR PERSONAL FOLDERS.
    1689813 - ITEM LINK IN SEARCH RESULTS SHOULD BE DIRECT ACCESS URL
    null

    Richard,
    You'll need to have 1.0.2.2 to be installed on the middle tier before performing the upgrade for your portal 3.0.9 upgrade repository on the database end. So that means, you'll need to wait for the Linux download of iAS 1.0.2.2 to be available before beginning your upgrade of the portal repository, assuming that your middle tier of iAS is also on a Linux box.
    iAS 1.0.2.2 does indeed include Portal 3.0.9, of which Portal 3.0.9 components will be installed during the upgrade process along with the upgrade of the middle tier. During the upgrade process, the installer (from my personal experience on NT), will notify you that it is performing an upgrade installation of your middle tier, provided that you specified the middle tier's ORACLE_HOME when executing the oracle installer.
    Just be sure to read and follow the 9iAS Migration guide before beginning your upgrade of the middle tier to iAS 1.0.2.2. After upgrading the middle tier to 1.0.2.2, the actual upgrade of the portal repository was extremely simple by comparison.
    The upgrade of the portal repository took a few hours (my recommendation is to invoke it off before leaving for the evening), and it will leave a detailed logfile for you to peruse afterwards, if you choose).
    Best Regards,
    Harry

  • Issues while generating Schema DAT files

    We are facing two type of issues when generating Schema ".dat" files from Informix Database on Solaris OS using the
    "IDS9_DSML_SCRIPT.sh " file.
    We are executing the command on SOLARIS pormpt as follows..
    "IDS9_DSML_SCRIPT.sh <DBName> <DB Server Name> ".
    The first issue is ,after the command is excuted ,while generating the ".dat" files the following error is occuring .This error is occuring for many tables
    19834: Error in unload due to invalid data : row number 1.
    Error in line 1
    Near character position 54
    Database closed.
    This happens randomly for some schemas .So we again shift the script to a different folder in Unix and execute it.
    Can we get the solution for avoiding this error.
    2. The second issue is as follows..
    When the ".dat" files are generated without any errors using the script ,these .dat files are provided to the OMWB tool to load the Source Model.
    The issue here is sometimes OMWB is not able to complete the process of creating the Source Model from the .dat files and gets stuck.
    Sometimes the tables are loaded ,but with wrong names.
    For example the Dat files is having the table name as s/ysmenus for the sysmenus table name.
    and when loaded to oracle the table is created with the name s_ysmenus.
    Based on the analysis and understanding this error is occuring due to the "Delimiter".
    For example this is the snippet from a .dat file generated from the IDS9_DSML_SCRIPT.sh script.The table name sysprocauthy is generated as s\ysprocauthy.
    In Oracle this table is created with the name s_ysprocauthy.
    s\ysprocauthy║yinformixy║y4194387y║y19y║y69y║y4y║y2y║y0y║y2005-03-31y║y65537y║yT
    y║yRy║yy║y16y║y16y║y0y║yy║yy║y╤y
    Thanks & Regards
    Ramanathan KrishnaMurthy

    Hello Rajesh,
    Thanks for your prompt reply. Please find my findings below:
    *) Have there been any changes in the extractor logic causing it to fail before the write out to file, since the last time you executed it successfully? - I am executing only the standard extractors out of the extractor kit so assumbly this shouldnt be a issue.
    *) Can this be an issue with changed authorizations? - I will check this today, bt again this does not seem to be possible as the same object for a different test project i created executed fine and a file was created.
    *) Has the export folder been locked or write protected at the OS level? Have the network settings (if its a virtual directory) changed? - Does not seem so because of the above reason.
    I will do some analysis today and revert back for your help.
    Regards
    Gundeep

  • Failing BPEL,ESB upgrade scripts from 10.1.3.1 to 10.1.3.4

    Hi All,
    I happened to upgrade 10.1.3.1. to 10.1.3.4 and have applied upgrade scripts at
    soa_10134patch\Disk1\install\soa_schema_upgrade\bpel\scripts\upgrade_10131_10134_oracle.sql
    I see 'table does not exist ' message for all instructions in the script file.
    When trying to creating new domain in BPEL , coming across the error that BPEL schema has not been upgraded.
    Kinldy let me know the procedure how to apply the upgrade patches..
    I have logged in f:> sqlplus "orabpel\orabpel as sysadmin" and executed the script.
    Database is Oracle XE 10g
    Edited by: user8285104 on May 9, 2009 9:49 AM

    you just use sqlplus orabple/orabpel, there is not need for the as sysadmin.
    It is fast (seconds) but you should see lots of SQL statements being applied.
    This script actually call 2 other scripts which may be an issue when running on windows as if you login to SQLPlus from a command prompt and the directory you are in is c:\ and the scripts are on f:\ then windows has trouble changing drives. This has caught me out many times.
    You can look at this file and call the 2 scripts individually.
    cheers
    James

  • How to generate the insert script of the  tables data present  in an entire

    How to generate the insert script of the tables data present in an entire schema in sqlplus environment
    with out toad can you please help me please!!!!!!!!!!!!!

    HI,
    First create this function to get insert scripts.
    /* Formatted on 2012/01/16 10:41 (Formatter Plus v4.8.8) */
    CREATE OR REPLACE FUNCTION extractdata (v_table_name VARCHAR2)
       RETURN VARCHAR2
    AS
       b_found   BOOLEAN         := FALSE;
       v_tempa   VARCHAR2 (8000);
       v_tempb   VARCHAR2 (8000);
       v_tempc   VARCHAR2 (255);
    BEGIN
       FOR tab_rec IN (SELECT table_name
                         FROM user_tables
                        WHERE table_name = UPPER (v_table_name))
       LOOP
          b_found := TRUE;
          v_tempa := 'select ''insert into ' || tab_rec.table_name || ' (';
          FOR col_rec IN (SELECT   *
                              FROM user_tab_columns
                             WHERE table_name = tab_rec.table_name
                          ORDER BY column_id)
          LOOP
             IF col_rec.column_id = 1
             THEN
                v_tempa := v_tempa || '''||chr(10)||''';
             ELSE
                v_tempa := v_tempa || ',''||chr(10)||''';
                v_tempb := v_tempb || ',''||chr(10)||''';
             END IF;
             v_tempa := v_tempa || col_rec.column_name;
             IF INSTR (col_rec.data_type, 'CHAR') > 0
             THEN
                v_tempc := '''''''''||' || col_rec.column_name || '||''''''''';
             ELSIF INSTR (col_rec.data_type, 'DATE') > 0
             THEN
                v_tempc :=
                      '''to_date(''''''||to_char('
                   || col_rec.column_name
                   || ',''mm/dd/yyyy hh24:mi'')||'''''',''''mm/dd/yyyy hh24:mi'''')''';
             ELSE
                v_tempc := col_rec.column_name;
             END IF;
             v_tempb :=
                   v_tempb
                || '''||decode('
                || col_rec.column_name
                || ',Null,''Null'','
                || v_tempc
                || ')||''';
          END LOOP;
          v_tempa :=
                v_tempa
             || ') values ('
             || v_tempb
             || ');'' from '
             || tab_rec.table_name
             || ';';
       END LOOP;
       IF NOT b_found
       THEN
          v_tempa := '-- Table ' || v_table_name || ' not found';
       ELSE
          v_tempa := v_tempa || CHR (10) || 'select ''-- commit;'' from dual;';
       END IF;
       RETURN v_tempa;
    END;
    SET PAUSE OFF
    SET LINESIZE 1200
    SET PAGESIZE 100
    SET TERMOUT OFF
    SET HEAD OFF
    SET FEED OFF
    SET ECHO OFF
    SET VERIFY OFF
    SPOOL  GET_INSERTS.SP REP
    SELECT EXTRACTDATA('EMP') FROM DUAL;
    SPOOL OFF
    SET PAUSE  ON
    SET LINESIZE 120
    SET PAGESIZE 14
    SET TERMOUT ON
    SET HEAD ON
    SET FEED 5
    SET ECHO ON
    SET VERIFY ON
    SELECT    'insert into EMP ('
           || CHR (10)
           || 'EMPNO,'
           || CHR (10)
           || 'ENAME,'
           || CHR (10)
           || 'JOB,'
           || CHR (10)
           || 'MGR,'
           || CHR (10)
           || 'HIREDATE,'
           || CHR (10)
           || 'SAL,'
           || CHR (10)
           || 'COMM,'
           || CHR (10)
           || 'DEPTNO) values ('
           || DECODE (empno, NULL, 'Null', empno)
           || ','
           || CHR (10)
           || ''
           || DECODE (ename, NULL, 'Null', '''' || ename || '''')
           || ','
           || CHR (10)
           || ''
           || DECODE (job, NULL, 'Null', '''' || job || '''')
           || ','
           || CHR (10)
           || ''
           || DECODE (mgr, NULL, 'Null', mgr)
           || ','
           || CHR (10)
           || ''
           || DECODE (hiredate,
                      NULL, 'Null',
                         'to_date('''
                      || TO_CHAR (hiredate, 'mm/dd/yyyy hh24:mi')
                      || ''',''mm/dd/yyyy hh24:mi'')'
           || ','
           || CHR (10)
           || ''
           || DECODE (sal, NULL, 'Null', sal)
           || ','
           || CHR (10)
           || ''
           || DECODE (comm, NULL, 'Null', comm)
           || ','
           || CHR (10)
           || ''
           || DECODE (deptno, NULL, 'Null', deptno)
           || ');'
      FROM emp;
    SELECT '-- commit;'
      FROM DUAL;now run the baove select statement you will get the following insert statements
    /* Formatted on 2012/01/16 10:57 (Formatter Plus v4.8.8) */
    --'INSERT INTO EMP('||CHR(10)||'EMPNO,'||CHR(10)||'ENAME,'||CHR(10)||'JOB,'||CHR(10)||'MGR,'||CHR(10)||'HIREDATE,'||CHR(10)||'SAL,'||CHR(10)||'COMM,'||CHR(10)||'DEPTNO)VALUES('||DECODE(EMPNO,NULL,'NULL',EMPNO)||','||CHR(10)||''||DECODE(ENAME,NULL,'NULL',''''|
    INSERT INTO emp
                (empno, ename, job, mgr,
                 hiredate, sal, comm, deptno
         VALUES (7369, 'SMITH', 'CLERK', 7902,
                 TO_DATE ('12/17/1980 00:00', 'mm/dd/yyyy hh24:mi'), 800, NULL, 20
    INSERT INTO emp
                (empno, ename, job, mgr,
                 hiredate, sal, comm, deptno
         VALUES (7499, 'ALLEN', 'SALESMAN', 7698,
                 TO_DATE ('02/20/1981 00:00', 'mm/dd/yyyy hh24:mi'), 1600, 300, 30
    INSERT INTO emp
                (empno, ename, job, mgr,
                 hiredate, sal, comm, deptno
         VALUES (7521, 'WARD', 'SALESMAN', 7698,
                 TO_DATE ('02/22/1981 00:00', 'mm/dd/yyyy hh24:mi'), 1250, 500, 30
    INSERT INTO emp
                (empno, ename, job, mgr,
                 hiredate, sal, comm,
                 deptno
         VALUES (7566, 'JONES', 'MANAGER', 7839,
                 TO_DATE ('04/02/1981 00:00', 'mm/dd/yyyy hh24:mi'), 2975, NULL,
                 20
    INSERT INTO emp
                (empno, ename, job, mgr,
                 hiredate, sal, comm,
                 deptno
         VALUES (7654, 'MARTIN', 'SALESMAN', 7698,
                 TO_DATE ('09/28/1981 00:00', 'mm/dd/yyyy hh24:mi'), 1250, 1400,
                 30
    INSERT INTO emp
                (empno, ename, job, mgr,
                 hiredate, sal, comm,
                 deptno
         VALUES (7698, 'BLAKE', 'MANAGER', 7839,
                 TO_DATE ('05/01/1981 00:00', 'mm/dd/yyyy hh24:mi'), 2850, NULL,
                 30
    INSERT INTO emp
                (empno, ename, job, mgr,
                 hiredate, sal, comm,
                 deptno
         VALUES (7782, 'CLARK', 'MANAGER', 7839,
                 TO_DATE ('06/09/1981 00:00', 'mm/dd/yyyy hh24:mi'), 2450, NULL,
                 10
    INSERT INTO emp
                (empno, ename, job, mgr,
                 hiredate, sal, comm,
                 deptno
         VALUES (7788, 'SCOTT', 'ANALYST', 7566,
                 TO_DATE ('04/19/1987 00:00', 'mm/dd/yyyy hh24:mi'), 3000, NULL,
                 20
    INSERT INTO emp
                (empno, ename, job, mgr,
                 hiredate, sal, comm,
                 deptno
         VALUES (7839, 'KING', 'PRESIDENT', NULL,
                 TO_DATE ('11/17/1981 00:00', 'mm/dd/yyyy hh24:mi'), 5000, NULL,
                 10
    INSERT INTO emp
                (empno, ename, job, mgr,
                 hiredate, sal, comm, deptno
         VALUES (7844, 'TURNER', 'SALESMAN', 7698,
                 TO_DATE ('09/08/1981 00:00', 'mm/dd/yyyy hh24:mi'), 1500, 0, 30
    INSERT INTO emp
                (empno, ename, job, mgr,
                 hiredate, sal, comm,
                 deptno
         VALUES (7876, 'ADAMS', 'CLERK', 7788,
                 TO_DATE ('05/23/1987 00:00', 'mm/dd/yyyy hh24:mi'), 1100, NULL,
                 20
    INSERT INTO emp
                (empno, ename, job, mgr,
                 hiredate, sal, comm, deptno
         VALUES (7900, 'JAMES', 'CLERK', 7698,
                 TO_DATE ('12/03/1981 00:00', 'mm/dd/yyyy hh24:mi'), 950, NULL, 30
    INSERT INTO emp
                (empno, ename, job, mgr,
                 hiredate, sal, comm,
                 deptno
         VALUES (7902, 'FORD', 'ANALYST', 7566,
                 TO_DATE ('12/03/1981 00:00', 'mm/dd/yyyy hh24:mi'), 3000, NULL,
                 20
    INSERT INTO emp
                (empno, ename, job, mgr,
                 hiredate, sal, comm,
                 deptno
         VALUES (7934, 'MILLER', 'CLERK', 7782,
                 TO_DATE ('01/23/1982 00:00', 'mm/dd/yyyy hh24:mi'), 1300, NULL,
                 10
                );i hope this helps .
    Thanks,
    P Prakash
    Edited by: prakash on Jan 15, 2012 9:21 PM
    Edited by: prakash on Jan 15, 2012 9:22 PM

  • Error during OIM schema upgrade during product ugprade from 9.1.0.2 to 11g

    Hi All,
    We have received following error during product upgrade from 9.1.0.2 to 11g.
    Error occurred during fourth step ( Task 4: Use Upgrade Assistant to Upgrade the Oracle Identity Manager Schema)
    On the screen while running upgrade assistance (ua.bat)
    Following message came on screen.
    Schema Version registry >> succeeded
    Oracle Identity Manager Schema Upgrade >> Failed
    I could see only following error in the log file.
    \middleware_home\Oracle_IDM1/server/db/oim/oracle/Upgrade/Oracle_upg_91_92_x2ell_92.sql
    [2012-06-28T09:34:51.147-06:00] [FrameworkMR] [NOTIFICATION] [] [upgrade.FrameworkMR] [tid: 14] [ecid: 0000JWnikOB6qIvyKWYBSQ1Fv7Zd000005,0] finalize() instance 1 of 2
    [2012-06-28T09:35:00.863-06:00] [OIM] [INCIDENT_ERROR] [] [upgrade.OIM] [tid: 13] [ecid: 0000JWnijRj6qIvyKWYBSQ1Fv7Zd000004,0] UPGCMP-00924: SQL error [{0}]
    [2012-06-28T09:35:00.863-06:00] [OIM] [INCIDENT_ERROR] [] [upgrade.OIM] [tid: 13] [ecid: 0000JWnijRj6qIvyKWYBSQ1Fv7Zd000004,0] [[
    java.sql.SQLSyntaxErrorException: ORA-00955: name is already used by an existing object
    ORA-06512: at line 31
         at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:457)
         at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:405)
         at oracle.jdbc.driver.T4C8Oall.processError(T4C8Oall.java:889)
         at oracle.jdbc.driver.T4CTTIfun.receive(T4CTTIfun.java:476)
         at oracle.jdbc.driver.T4CTTIfun.doRPC(T4CTTIfun.java:204)
         at oracle.jdbc.driver.T4C8Oall.doOALL(T4C8Oall.java:540)
         at oracle.jdbc.driver.T4CStatement.doOall8(T4CStatement.java:202)
         at oracle.jdbc.driver.T4CStatement.executeForRows(T4CStatement.java:1074)
         at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1466)
         at oracle.jdbc.driver.OracleStatement.executeUpdateInternal(OracleStatement.java:2123)
         at oracle.jdbc.driver.OracleStatement.executeUpdate(OracleStatement.java:2067)
         at oracle.jdbc.driver.OracleStatementWrapper.executeUpdate(OracleStatementWrapper.java:306)
         at oracle.ias.mrua.plugin.oim.SchemaUpgrader.loadScript(SchemaUpgrader.java:303)
         at oracle.ias.mrua.plugin.oim.SchemaUpgrader.doUpgrade(SchemaUpgrader.java:139)
         at oracle.ias.mrua.plugin.oim.OIMSchemaUpgradePlugin.doUpgrade(OIMSchemaUpgradePlugin.java:302)
         at oracle.ias.mrua.MRUA.executePlugins(MRUA.java:3672)
         at oracle.ias.mrua.MRUA.internal_driver(MRUA.java:2448)
         at oracle.ias.mrua.MRUA.driver(MRUA.java:1710)
         at oracle.ias.upgrade.gui.UAUpgradeThread.run(UAUpgradeThread.java:390)
    Any Idea ?
    Ritu

    Hi All,
    We are also trying to upgrade OIM 9.1.0.2 which is present in our environment to OIM11g. Request your help.
    Now how do we achieve the upgrade? Should my source of OIM9i software  and target of OIM 11g software  be installed on the same server?
    I did install OIM11g and OIM9i on the same server  and tried to do schema upgrade based on the link:
    Upgrading Oracle Identity Manager Environment
    But during examine phase I get error the below error
    UPGAST 00091- ERROR DURING EXAMINE OF COMPONENETS
    UPGAST 01004- UPGRADE IS UNABLE TO DYNAMICALLY LOAD COMPONENET SPECIFIC SOFTWARE MODULES.
    When i check in the log in internet it says :
    Cause: Repository upgrade framework was unable to dynamically load the Java classes of its component-specific software modules. mrua.xml file might have been corrupted.
    Action: This is an internal error. Verify that the Java classpath has been correctly set, the mrua.xml file is correct, and that the .jar files for all component-specific software modules are present in the jlib directory. Contact Oracle Support Services for assistance
    What is the javaclasspath to be set?how to check if mrua.xml and jar files are fine
    Pls help.Any help is much appreciated.

  • Error during OIM schema upgrade- OIM 9.1.0.2 to 11g

    Hi All,
    We are trying to upgrade OIM 9.1.0.2 which is present in our environment to OIM11g. Request your help.
    Now how do we achieve the upgrade? Should my source of OIM9i software  and target of OIM 11g software  be installed on the same server?
    I did install OIM11g and OIM9i on the same server  and tried to do schema upgrade based on the link:
    http://docs.oracle.com/cd/E21764_01/upgrade.1111/e10129/upgrade_oim.htm
    But during examine phase I get error the below error
    UPGAST 00091- ERROR DURING EXAMINE OF COMPONENETS
    UPGAST 01004- UPGRADE IS UNABLE TO DYNAMICALLY LOAD COMPONENET SPECIFIC SOFTWARE MODULES.
    When i check in the log in internet it says :
    Cause: Repository upgrade framework was unable to dynamically load the Java classes of its component-specific software modules. mrua.xml file might have been corrupted.
    Action: This is an internal error. Verify that the Java classpath has been correctly set, the mrua.xml file is correct, and that the .jar files for all component-specific software modules are present in the jlib directory. Contact Oracle Support Services for assistance
    What is the javaclasspath to be set?how to check if mrua.xml and jar files are fine
    Pls help.Any help is much appreciated.

    Hi All,
    We are also trying to upgrade OIM 9.1.0.2 which is present in our environment to OIM11g. Request your help.
    Now how do we achieve the upgrade? Should my source of OIM9i software  and target of OIM 11g software  be installed on the same server?
    I did install OIM11g and OIM9i on the same server  and tried to do schema upgrade based on the link:
    Upgrading Oracle Identity Manager Environment
    But during examine phase I get error the below error
    UPGAST 00091- ERROR DURING EXAMINE OF COMPONENETS
    UPGAST 01004- UPGRADE IS UNABLE TO DYNAMICALLY LOAD COMPONENET SPECIFIC SOFTWARE MODULES.
    When i check in the log in internet it says :
    Cause: Repository upgrade framework was unable to dynamically load the Java classes of its component-specific software modules. mrua.xml file might have been corrupted.
    Action: This is an internal error. Verify that the Java classpath has been correctly set, the mrua.xml file is correct, and that the .jar files for all component-specific software modules are present in the jlib directory. Contact Oracle Support Services for assistance
    What is the javaclasspath to be set?how to check if mrua.xml and jar files are fine
    Pls help.Any help is much appreciated.

  • I am trying to update my iTunes to 10.5.1 so that I can upgrade my 3GS phone but am getting the following error message when trying to install the itunes:Install step failed: Run pre upgrade script for apple mobile device support. Contact software manufac

    I am trying to update my iTunes to 10.5.1 so that I can upgrade my 3GS phone but am getting the following error message when trying to install the itunes: Install step failed: Run pre upgrade script for apple mobile device support. Contact software manufacturer for assistance. I am on a MacBook pro running 10.5.8 OS. Has anyone seen this before and how can I get it resolved.
    Thanks for your help in advance....

    Did you ever figure out the problem? "Contact Software Manufacturer"?? That sounds ominous... I've got the same issue and I'm pretty durn aggravated right about now....
    Thanks!

  • Upgrade script for 2.1.0.9.3?

    did anybody try to upgrade a WebDB version
    2.1.0.9.3 to Portal 3.0? The upgrade script
    for WebDB2.2 to Portal30 fails due to the
    version number. I do not know the differences
    between WebDB 2.1.x and 2.2. If the changes
    have not been too significant, is it possible
    to modify the existing upgrade script
    (WebDB2.2 -> Portal3.0) and still run it?
    Thanks for any help or hint
    Joerg

    For all of those upgrading to Portal 3.0 from WebDB 2.x, you will first need to upgrade your existing WebDB installation to WebDB 2.2 first before doing the WebDB 2.2 to Portal 3.0.x upgrade. It is a requirement that your WebDB environment be at version 2.2 before upgrading to Portal 3.0.x.
    null

  • Automatic Generation of JMS event generator using WLST script

    is there any way to create and deploy JMS event generator using WLST script. i am using weblogic server 10.3.1

    You could see this informantion here:
    http://docs.oracle.com/cd/E14981_01/wli/docs1031/deploy/cluster.html#wp1519038

Maybe you are looking for