The pl/sql language specification

Hello

Is there anywhere I can find a pl/sql language specification? Specifically, I'm looking for a list of syntax and semantic errors that may occur during the compilation.

I tried to search in this forum and elsewhere, but without success. Maybe I'm simply not looking the right conditions.

See you soon,.
Adam

989097 wrote:
Hello

Is there anywhere I can find a pl/sql language specification? Specifically, I'm looking for a list of syntax and semantic errors that may occur during the compilation.

I tried to search in this forum and elsewhere, but without success. Maybe I'm simply not looking the right conditions.

See you soon,.
Adam

How can I ask a question in the forums?
SQL and PL/SQL FAQ

BOOKMARK the URL below

http://www.Oracle.com/pls/db112/portal.all_books

Use the URL below

http://docs.Oracle.com/CD/E11882_01/AppDev.112/e25519/TOC.htm

Tags: Database

Similar Questions

  • Is there a PDF version of the ActionScript 3 language specification?

    Hi, I'm new to ActionScript, but not to programming. I would like to browse the ActionScript 3 language specification. It is available online at the ActionScript 3.0 Language Specification. Is there a compiled version of PDF of him somewhere? Or is it maybe some PDF export button I'm missing? I prefer browsing big docs like this in book form - and be accessible in offline and outside a browser.

    http://www.Adobe.com/devnet/ActionScript/references.html

  • Is pl/sql language of the compiler or interpreter of programming language?

    Hello guys,.

    Is pl/sql language of the compiler or interpreter of programming language?

    Thank you

    Published by: Polat on 14.Mar.2012 09:09

    >
    Is pl/sql language of the compiler or interpreter of programming language?
    >
    The two-

    See compilation of PL/SQL units for running Native in the Doc of the PL/SQL language
    http://docs.Oracle.com/CD/E18283_01/AppDev.112/e17126/tuning.htm#sthref1023

    >
    You can usually speed up the units of PL/SQL compile native code (code system processor-dependent), which is stored in the SYSTEM tablespace.

    You can compile natively any PL/SQL for any unit, including those providing the database Oracle.

    The program compiled natively units work in all environments of servers, including the configuration of shared server (formerly called "multi-threaded server") and Oracle Real Application Clusters (Oracle RAC).
    >

    And this from the section How PL/SQL Native Compilation Works
    >
    How does the Native Compilation of PL/SQL
    Without native compilation, statements from PL/SQL in a PL/SQL unit are compiled into an intermediate form, the system code, which is stored in the catalog and interpreted at run time.

    With native compilation of PL/SQL, PL/SQL instructions in a PL/SQL unit are compiled into native code and stored in the catalog. Native code should not be interpreted at the time of execution, so that it runs faster.

    Because the native compilation applies only to the PL/SQL statements, a unit of PL/SQL that uses only SQL statements may not work faster when it is compiled into native mode, but it works at least as fast as the interpreted code. The compiled code and the interpreted code are the same library calls, their action is the same.

  • Anyone wishing to share SQL that will pull the text of the business unit that is attached to a language specification?

    Anyone wishing to share SQL that will pull the text of the business unit that is attached to a language specification?

    Select s.SpecNum, s.IssueNum, SpecSummary n.name s

    inner join gsmApprovedUsage on s.SpecID = au.fkSpecID and au.fkSpecID as 5816% AU '

    gsmApprovedUsageBUJoin j j.fkApprovedUsage = au.pkid inner join

    inner join commonBusinessUnitName on n.fkSpecBusinessUnit = j.fkBusinessUnit and n.langID = 0 n;

  • How can I fix this "Setup was unable to find (or could not read) the language specific setup resource dll, unable to continue." Error if please restart and try again. » ?

    I'm trying to install Microsoft FreeLancer on Windows 7 64 bit Home Premium edition (according to WinVer: Version 6.1, build 6701, Service Pack 1).

    After inserting the DVD in the drive and run "Setup.exe", I am invited by the UAC to elevate permissions - who I am agreement - then the following error message appears: "Setup was unable to find (or could not read) the language specific setup resource dll, unable to continue." If please restart and try again. »

    The only valid technote, I found the issue was http://support.microsoft.com/kb/258496. The below is the list of the things that I tried after reading this technote - but no avail.

    • Of course, I tried to restart.
    • I checked the DVD is in good condition, even with regard to the attempts to install from the disc to a friend and even went up to compare the MD5 of all files on two DVDs, the checksums match.
    • I tried using the compatibility mode for XP, although according to the report of another user on the statements of the Windows Compatibility Center that this should not be necessary.
    • I ran a full "chkdsk" (i.e. one scheduled for after a reboot, rebooted) and chkdsk reported no error.
    • I deleted all files "di - use ' %TEMP%, immediately after the restart and before you run setup.exe.
    • I've looked at this the EMET tool had an exemption for 'setup.exe' and my tool anti-virus was disabled before installation.

    Everything I try seems to have no effect on the resolution of this problem.

    Can anyone suggest any possible causes of--and, ideally, solutions to-this issue?

    Kind regards

    Alex.

    ... "Step 1: perform the clean boot to verify if it's a software conflict matter. '...

    -Tried but not given to impact.

    ... "Step 2: System File Checker tool"...

    -Tried but not given to impact.

    ... "I would have you check the same DVD on another computer and check if it works. '...

    -The only other machine that I use Ubuntu. My other half uses only his Mac.

    I managed to work around this problem by using the following workaround solution:

    I installed Freelancer CD on a Windows XP virtual machine running in VMWare Workstation. I then moved the installation directory (C:\Program Files\FreeLancer) off the coast of the virtual machine on my Windows 7 computer in (C:\Program Files (x 86) \FreeLancer).

    The game seems to work fine as long as it is run with administrative privileges (that is, the freelancer.exe running). Without administrator rights, the games is never recorded. With them, they are registered under "C:\Program Files (x 86) \FreeLancer\EXE\Accts\SinglePlayer" successfully.

  • Are constants of body of the PL/SQL Package in the shared or private area

    Based on that it is not clear to me if body Package PL/SQL constants are stored in the shared or private area.

    http://docs.Oracle.com/CD/B28359_01/server.111/b28318/memory.htm

    "PL/SQL program units and the Shared Pool

    Oracle database treats PL/SQL program units (anonymous blocks, procedures, functions, packages and triggers in database) much the same way he treats the individual SQL statements. Oracle database allocates a shared area to hold the shape analyzed, compiled a program unit. Oracle database allocates a private space to hold values specific to the session who runs the program unit, including local, global and package variables (also known as the package is instantiated) and stamps of SQL execution. If more than one user is running the same program unit, a place unique and shared is used by all users, while each user runs a separate copy of his own private SQL area containing session-specific values.

    The individual SQL statements contained in a PL/SQL program unit are processed as described in the previous sections. Despite their origins within a PL/SQL program unit, these SQL statements use a shared area to hold their analysed representations and a private space for each session, who executes the statement. »


    I am also curious to know what are the differences in fine grain in a perspective of memory and performance (multisession) for the two examples below. One is more effective?


    Example 1.

    create or replace
    package body
    application_util
    as

    c_create_metadata constant varchar2 (6000): =...

    procedure process_xxx
    (
    )
    as
    Start
    ...
    end process_xxx;

    end application_util;

    vs.

    Example 2.

    create or replace
    package body
    application_util
    as

    procedure process_xxx
    (
    )
    as

    c_create_metadata constant varchar2 (6000): =...

    Start
    ...
    end process_xxx;

    end application_util;

    881398 wrote:

    But I still have to ask because it seems still more particularly in example 1 that the constant can be attributed to the use that the actual value could be a pointer to a constant string value in a table of symbols or something related to the compilation unit. I'm always curious in a perspective of management of memory if there is a difference between the example 1 and example 2, and if one is better and why.

    The storage is real, references to this storage internal to the PL/SQL engine. And irrelevant to the PL/SQL programmer.

    This question is really a disagreement over the shape is better: example 1 or example 2. I prefer the 1 example, for readability, testability, etc., and so the question is where is the performance of the memory/differences and or is it just preference of developer.

    I agree with rp0428 - he raised a very important point that it is a problem of scope and nothing else.

    Basically is there any trade-off between using one shape on the other insofar as the performance and memory management?

    Not really. Most runtime engines release not just actual system memory when a variable is out of range. the malloc() calls are expensive. Free() calls are expensive (and are not always the result in usable free memory which can be malloc'ed again).

    Several execution engines use what is called a managed heap. A malloc is made of a new process when it is initialized. The heap memory / managed malloc'ed is adjacent. Pointer allocation of memory for this process is initially pointing to the base of the managed heap. As the process allocates / uses memory, the pointer is moved just advance in the managed heap, which indicates the HWM as such - the beginning of the 'free' memory in the heap. Allocation is sequential.

    Reset of your variable execution, or releasing your runtime object, does not reset the HWM as other objects/variables can still be used and located after this place in the bunch. In this case set him free memory by releasing / resetting the language variables does not restore the kernel memory.

    Memory management is a sophisticated process entirely processed by the engine running - and best left to the runtime engine. As you as a programmer do not explicitly control the memory management, it is not a good idea to try to write code that artificially attempt to use 'better' for the runtime engine memory management. The next version of the runtime of that aura of new features, optimizations and so on — and your interference in your code to get the "valorisation" of memory can happen just bite you not bad after an upgrade to execution.

    Regarding the performance aspect - variable initialization is dependent on scope. In order to have a global scope means a one-time initialization, whereas a private scope (created each call) is a multiple unit. If the first is a little faster than the latter.

    However, the performance differences are tiny - IMO too small to justify this as a valid consideration to spend in addition to the decision of functional design on what possibilities a variable or a constant need to have.

    SQL> create or replace package FooLib1 as
      2          procedure Exec;
      3  end;
      4  /
    
    Package created.
    
    SQL>
    SQL> create or replace package body FooLib1 as
      2          const1  constant varchar2(32767) := rpad('-',10000,'-');
      3
      4          procedure Exec is
      5                  var1    varchar2(32767);
      6          begin
      7                  var1 := const1;
      8          end;
      9  end;
     10  /
    
    Package body created.
    
    SQL>
    SQL>
    SQL> create or replace package FooLib2 as
      2          procedure Exec;
      3  end;
      4  /
    
    Package created.
    
    SQL>
    SQL> create or replace package body FooLib2 as
      2          procedure Exec is
      3                  const1  constant varchar2(32767) := rpad('-',10000,'-');
      4                  var1    varchar2(32767);
      5          begin
      6                  var1 := const1;
      7          end;
      8  end;
      9  /
    
    Package body created.
    
    SQL>
    SQL> set timing on
    SQL> exec for i in 1..100000 loop FooLib1.Exec; end loop;
    
    PL/SQL procedure successfully completed.
    
    Elapsed: 00:00:00.28
    SQL> exec for i in 1..100000 loop FooLib2.Exec; end loop;
    
    PL/SQL procedure successfully completed.
    
    Elapsed: 00:00:00.74
    SQL> 
    

    A second difference 0.0000046 in a single execution for FooLib.Exec between the use of package for the constant scope, against increased private. Which means that the issue of the scope is not a decision of the performance. Not when improving performance overhead is 0,0046 millisecs.

  • What are the pl/sql w.r.t. unix commands

    How unix commands will help in pl/sql.
    What are the commands, why UNIX is preferable to the windows environment.



    Cheers...

    Combo says:
    How unix commands will help in pl/sql.
    What are the commands, why UNIX is preferable to the windows environment.

    UNIX is not used in PL/SQL. PL/SQL is a language in its own right, and Unix is the operating system with Oracle.

    Oracle will run on Windows and Unix environments (as well as some other * nix versions specific for example linux etc.).  UNIX is often preferred by people for a server environment, as he has a history of being a more stable operating system, but there are many who use Windows as a server environment too (we have we all both windows and unix servers).

    There are advantages and disadvantages to both. for example, it is easier to treat an MS Excel spreadsheet as an external database by using an ODBC Excel driver and services Oracle heterogeneous if you use a windows server, while UNIX, you generally with the purchase of a specific to ODBC driver with Excel, but the same Unix files has some advantages over windows except the reliability factor.

  • Errors in the schema SQL TestStand 4.1.1

    I am trying to create a new MSDE 2005 SQL Server database using the new schema of TestStand 4.1.1. I've used the SQL Server stored procedure to generate a .sql file, and then run this SQL file. I get several errors similar to the following:

    > CREATE TABLE STEP_RESULT (ID uniqueidentifier PRIMARY KEY, UUT_RESULT uniqueidentifier, STEP_PARENT uniqueidentifier, int ORDER_NUMBER, STEP_NAME varchar (255), STEP_TYPE varchar (255), STEP_GROUP varchar (32), STEP_INDEX int, STEP_ID varchar (32), STATUS varchar (255), REPORT_TEXT varchar (255), int, varchar ERROR_MESSAGE ERROR_CODE (255), CAUSED_SEQFAIL bit, MODULE_TIME float, float TOTAL_TIME) Int NUM_PASSED int NUM_LOOPS, int NUM_FAILED, int ENDING_LOOP_INDEX, int LOOP_INDEX, int INTERACTIVE_EXENUM, CONSTRAINT STEP_RESULT_FK FOREIGN KEY (UUT_RESULT) REFERENCES (ID))
    Command failed with the following error...:
    Line 1: Syntax incorrect close '('.) (- 2147217900)

    I tried to run this statement in both MSDE and through the viewer of TestStand database with similar results. Everyone knows this problem or have any ideas?

    Function to generate the SQL files from a schema does not always perfect SQL statements, but closer you get to where you need to be to try to create it from scratch. Have you thought to look at the default SQL files included with the product, specifically the file "SQL Server Create Stored Proc result Tables.sql" located in the directory "\Components\Models\TestStandModels\Database?" It is a file that should work out of the box for the default schemas for SQL server and MSDE. Other SQL files for other schemas by default, and there are older SQL files for previous versions in the subdirectory 'previous patterns (2.x - 4.0).

  • BlackBerry smartphones is supported for the East Asian languages for the Blackberry Bold 9780 on O2?

    Hello, I hope someone can help me with my problem. I'm new to the whole Blackberry I just bought my first BB camera a few days ago so please understand if I don't know what words are in the world of Blackberry. The questions will be in bold.

    So, I recently bought a Blackberry Bold 9780 and I am very satisfied with the overall product. However I was wondering if there was support for the East Asian languages (Chinese, Japanese, Korean etc) for my 9780 BB which is on O2 UK.

    Right now, in my languages options, I can only entry for most European languages (English, Spanish, French, etc.) There are no options for languages of East Asia at all. When I try to display all messages or go on the browser which are languages of East Asia, I don't see one set of black boxes.

    I know there are software updates to update your device to take charge of specific languages, so I checked the software downloads page that interests me.

    O2 - UK users, they have two packages:

    -BlackBerry Handheld Software v6.0.0.905 (all languages)

    Package Version: 6.0.0.905
    Composed of:

    • Applications: 6.0.0.294
    • Software platform: 6.5.0.54
    • File name: 9780AllLang_PBr6.0.0_rel905_PL6.5.0.54_A6.0.0.294_O2_UK.exe
    • File size: 180,72 MB

    -BlackBerry Handheld Software v6.0.0.0905 (Multilingual)

    Package Version: 6.0.0.905
    Composed of:

    • Applications: 6.0.0.294
    • Software platform: 6.5.0.54
    • File name: 9780jAllLang_PBr6.0.0_rel905_PL6.5.0.54_A6.0.0.294_O2_UK.exe
    • File size: 185,61 MB

    Then How do I know which package I currently installed on my device because the application number and the number of software are identical.

    On my device it details shows: v6.0.0.294, (905 Bundle, platform 6.5.0.54)

    So I wonder if none of the above two packages have the option to enable East Asian language support.

    I'm sure I have the latest update for my camera that I can't update more far depending on the desktop software and my phone. So If I move to another package, how do I go to do?

    I mainly use a MAC, but I can also have access to a PC too. I don't know if it's important, but I think that there is a difference between the Desktop software on each computer that is used to update your software.

    If possible, it is that I would be able to download another package that has the support of another service provider East Asia and update on my own? Or is it too risky because it may crash my machine?

    And my last question, so it is likely that O2 can do in the near future if there is no option for the language support East Asia now,?

    Sorry if I rambled on a bit too much or too many questions. I just want to know if its possible to enable language support is now, otherwise I will waste countless hours looking for a method. I looked to see if there were similar questions, asked the Board of Directors, but none was really specific to my needs.

    A big thank you to everyone who sits reading through this. I appreciate the responses.

    Thank you.

    Do not know if you understand how to do this, but I did these steps and it worked fine:

    1. https://www.blackberry.com/Downloads/contactFormPreload.do?code=7D2A383E54274888B4B73B97E1AAA491&dl=... go here and download the version of v6.0.0.0905 (Multilingual) BlackBerry Handheld Software.

    2 install the downloaded OS on your computer, you need the files of this new OS more later to add multi language support for your BlackBerry device.
    C:\Program Files\Common search in Motion\Shared\Loader Files\9780AllLang_v6.0.0.294_P6.5.0.54
    The CJK.alx is the file that you will use later.

    3. use Desktop Manager to save your BlackBerry (better safe than sorry)

    4. before installation, go to your AppLoader folder, for example C:\Program Files Research In Motion\AppLoader and move the Vendor.xml to a backup directory, if you have kept a copy of the file. The loader.exe allows to load up the AppLoader, follow the instructions in the wizard.

    He automatically gave me a list of applications and languages, if you scroll down see you East Asian languages check those you want that I checked Japanese and Thai language and font support. If you do not see these click on 'Add' at the top and navigate to the CJK.alx file.

    So let the application loader it's thing, after that everything should work.

    Hope this works for you also. I take no responsibility of bricking your phone.

    BlackBerry should be an option to install more languages via the phone.

  • Return a pointer to extproc c to the pl/sql module

    Hi all


    I would like to get a pointer to a structure within a c module called from a pl/sql block.


    Here is an example


    The C module

    #include < stdio.h >


    typedef struct

    {

    gval int;

    } sgval;



    sgval myval;


    int getval (void)

    {

    return (myval.gval);

    }


    int getvalfromadr (unsigned adr)

    {

    If (adr == (unsigned) & myval)

    return 2;

    on the other

    return 5;

    }


    Sub setval (int val)

    {

    myVal.gval = val;

    }


    getadrval (void) unsigned

    {

    return (unsigned) & myval;

    }




    The library and the functions

    create or replace the c_btree library under ' / home/oracle/btree.so';

    /


    create or replace procedure setval (val pls_integer) is

    external

    Library sys.c_btree

    name "setval.

    C language

    Calling standard C;

    /



    create or replace function getval pls_integer return is

    external

    Library sys.c_btree

    name "getval '.

    C language

    Calling standard C;

    /



    create or replace function getadrval return pls_integer is

    external

    Library sys.c_btree

    name "getadrval".

    C language

    Calling standard C;

    /


    create or replace function getvalfromadr (adr pls_integer) return pls_integer is

    external

    Library sys.c_btree

    name "getvalfromadr".

    C language

    Calling standard C;

    /



    And the test


    Set serveroutput on

    declare

    str1 varchar2 (20);

    VARCHAR2 (20) str2;

    RC pls_integer: = 0;

    ADR pls_integer;

    Start

    SETVAL (10);  -Initialize the global variable in the c module

    RC: = getval; -Get the value of the global variable

    dbms_output.put_line (' rc ='|) RC);


    -Try to get the address of the global variable in the c module

    ADR: = getadrval;

    dbms_output.put_line (' adr ='|) (ADR);  --also got a negative number, probably the wrong type for this information?


    -check if I address at, for sure not!

    RC: = getvalfromadr (adr);

    dbms_output.put_line (' rc ='|) RC); -return 5 as not equal.


    end;

    /


    Execution of

    PL/SQL procedure successfully completed. SQL > /rc = 10adr =-100263692rc = 5


    What's wrong? What is the correct type should I use for this?


    Thank you very much

    jko




    When I hear the ITO in memory it is nothing to do with the physical structure well known of ITO.

    I mean the value in memory B * Tree that could store of complex structure for fast accessed directly integrated and usable with Sql and PL/Sql.

    I have no problem to solve. just a few ideas and some time

    OK - but the band fundamental question is WHY. Why did you choose to try to use the PL/SQL for this?

    Why have no plans to use Java instead? It supports the "long" integer data type and has excellent variety and nested object support.

    You can also access this Java code from other modules to 'share' the data and even to use Java in the database so that was really necessary.

  • When I run the "@ddl_setup.sql" on a node of the 11gr2rac getting errors

    I want to open DDL replicate of the source node, so I run

    SQL > @marker_setup

    Marker setup script

    You will be asked the name of a schema for Oracle GoldenGate database objects.

    NOTE: The schema must be created before running this script.

    NOTE: Stop all replication DDL before starting this installation.

    Enter the Oracle GoldenGate name schema: ogg

    Table marker installation script is completed, run the script to check...

    Please enter the name of a schema for GoldenGate database objects:

    Name of schema setting for OGG

    MARKER TABLE

    -------------------------------

    Ok

    SEQUENCE MARKER

    -------------------------------

    Ok

    When I run the "@ddl_setup.sql" on a node of the 11gr2rac getting errors

    SQL > @ddl_setup.sql

    Configure Oracle GoldenGate DDL replication script

    Verify that the current user has privileges to install the DDL replication...

    You will be asked the name of a schema for Oracle GoldenGate database objects.

    NOTE: For a source of Oracle 10 g, the basket of the system must be disabled. For Oracle 11 g and later, it can be activated.

    NOTE: The schema must be created before running this script.

    NOTE: Stop all replication DDL before starting this installation.

    Enter the Oracle GoldenGate name schema: ogg

    Working, please wait...

    Line to the ddl_setup_spool.txt file

    Checking the sessions that hold locks on the tables of metadata Oracle Golden Gate...

    Full version.

    Using OGG as Oracle GoldenGate scheme a name.

    Working, please wait...

    Script of DDL replication configuration has completed, run the script to check...

    Please enter the name of a schema for GoldenGate database objects:

    Name of schema setting for OGG

    CLEAR_TRACE STATUS:

    Error on line/pos

    -------------------- -----------------------------------------------------------------

    No error no error

    CREATE_TRACE STATUS:

    Error on line/pos

    -------------------- -----------------------------------------------------------------

    No error no error

    TRACE_PUT_LINE STATUS:

    Error on line/pos

    -------------------- -----------------------------------------------------------------

    No error no error

    INITIAL_SETUP STATUS:

    Error on line/pos

    -------------------- -----------------------------------------------------------------

    No error no error

    STATUS OF THE DDLVERSIONSPECIFIC PACKAGE:

    Error on line/pos

    -------------------- -----------------------------------------------------------------

    No error no error

    STATUS OF THE DDLREPLICATION PACKAGE:

    Error on line/pos

    -------------------- -----------------------------------------------------------------

    No error no error

    DDLREPLICATION STATE OF PACKAGE BODY:

    Error on line/pos

    -------------------- -----------------------------------------------------------------

    1453/9 PL/SQL: statement ignored

    1455/23 PL/SQL: ORA-00942: table or view does not exist

    1464/9 PL/SQL: statement ignored

    1466/23 PL/SQL: ORA-00942: table or view does not exist

    1478/9 PL/SQL: statement ignored

    1480/23 PL/SQL: ORA-00942: table or view does not exist

    1485/9 PL/SQL: statement ignored

    1487/23 PL/SQL: ORA-00942: table or view does not exist

    1492/9 PL/SQL: statement ignored

    1494/23 PL/SQL: ORA-00942: table or view does not exist

    1499/9 PL/SQL: statement ignored

    Error on line/pos

    -------------------- -----------------------------------------------------------------

    1501/23 PL/SQL: ORA-00942: table or view does not exist

    1581/4 PL/SQL: statement ignored

    1582/18-PL/SQL: ORA-00942: table or view does not exist

    1584/4 PL/SQL: statement ignored

    1585/18-PL/SQL: ORA-00942: table or view does not exist

    1600/25 PL/SQL: ORA-00942: table or view does not exist

    1600/4 PL/SQL: statement ignored

    1602/25 PL/SQL: ORA-00942: table or view does not exist

    1602/4 PL/SQL: statement ignored

    DDL IGNORE TABLE

    -----------------------------------

    FAILURE: The Table does not exist

    DDL IGNORED THE JOURNAL TABLE

    -----------------------------------

    FAILURE: The Table does not exist

    STATUS OF THE DDLAUX PACKAGE:

    Error on line/pos

    -------------------- -----------------------------------------------------------------

    No error no error

    DDLAUX STATE OF PACKAGE BODY:

    Error on line/pos

    -------------------- -----------------------------------------------------------------

    0/0 PL/SQL: analysis of completed Compilation unit

    1/21 PLS-00304: impossible to compile a body of 'DDLAUX' without sound

    specification of the

    1/21 PLS-00905: OGG object. DDLAUX is not valid

    SYS. STATUS OF THE DDLCTXINFO PACKAGE:

    Error on line/pos

    -------------------- -----------------------------------------------------------------

    No error no error

    SYS. DDLCTXINFO STATE OF PACKAGE BODY:

    Error on line/pos

    -------------------- -----------------------------------------------------------------

    No error no error

    DDL HISTORY TABLE

    -----------------------------------

    FAILURE: The Table does not exist

    DDL HISTORY TABLE (1)

    -----------------------------------

    FAILURE: The Table does not exist

    DUMP DOF TABLES

    -----------------------------------

    FAILURE: The Table does not exist

    COLUMNS OF DUMP DDL

    -----------------------------------

    FAILURE: The Table does not exist

    GROUPS OF LOG DUMP DDL

    -----------------------------------

    FAILURE: The Table does not exist

    SCORES OF DUMP DDL

    -----------------------------------

    FAILURE: The Table does not exist

    DDL DUMP KEY PRIMARIES

    -----------------------------------

    FAILURE: The Table does not exist

    SEQUENCE OF the DDL

    -----------------------------------

    FAILURE: The sequence does not exist

    GGS_TEMP_COLS

    -----------------------------------

    FAILURE: The Table does not exist

    GGS_TEMP_UK

    -----------------------------------

    FAILURE: The Table does not exist

    STATE OF THE DDL TRIGGER CODE:

    Error on line/pos

    -------------------- -----------------------------------------------------------------

    126/9 PL/SQL: statement ignored

    128/23 PL/SQL: ORA-00942: table or view does not exist

    133/21 PL/SQL: ORA-02289: sequence does not exist

    133/5 PL/SQL: statement ignored

    657/14 PLS-00905: OGG object. DDLAUX is not valid

    657/5 PL/SQL: statement ignored

    919/25 PL/SQL: ORA-00942: table or view does not exist

    919/4 PL/SQL: statement ignored

    DDL TRIGGER SYSTEM STATUS

    -----------------------------------

    Ok

    STATUS OF RACE DDL TRIGGER

    ----------------------------------------------------------------------

    ACTIVE

    OF "OGG". "" GGS_SETUP ".

    *

    ERROR on line 2:

    ORA-00942: table or view does not exist

    OF "OGG". "" GGS_SETUP ".

    *

    ERROR on line 2:

    ORA-00942: table or view does not exist

    OF "OGG". "" GGS_SETUP ".

    *

    ERROR on line 2:

    ORA-00942: table or view does not exist

    LOCATION OF THE TRACE OF DDL FILE

    ------------------------------------------------------------------------------------------------------------------------

    /Home/data/app/Oracle/diag/RDBMS/AppStore/appstore2/trace/ggs_ddl_trace.log

    Analyze the status of the installation...

    THE STATE OF REPLICATION DDL

    ------------------------------------------------------------------------------------------------------------------------

    ERRORS in the installation of software components of DDL replication (6)

    Complete script.

    I had been struggling with the same problem for 2 days. You run the script as sysdba, how do you get the error then insufficient? I did my first test GG in February. I've been on 11.2.0.3 + patch January + patch for the integrated capture. It has worked well for me. I went back to my GG test week with 11.2.0.3 + patch of July last and ran into the same problem. The solution for me was the last version of GG. See my previous post for the patch numbers.

    Post edited by: ursusca

  • execute the dynamic sql statement

    Hi all

    CREATE TABLE  XX_OFFICE_USER_IMP 
      (
        ID              NUMBER,
        OFFICE          VARCHAR2(10 BYTE),
        USER_NAME       VARCHAR2(10 BYTE),
        BANK_ACCOUNT_ID NUMBER,
        TRANSFERED      NUMBER
      )
    Insert into xx_office_user_imp (ID,OFFICE,USER_NAME,BANK_ACCOUNT_ID,TRANSFERED) values (421,'0000','F0000',10029,null);
    Insert into xx_office_user_imp (ID,OFFICE,USER_NAME,BANK_ACCOUNT_ID,TRANSFERED) values (422,'0000','F0000',10031,null);
    Insert into xx_office_user_imp (ID,OFFICE,USER_NAME,BANK_ACCOUNT_ID,TRANSFERED) values (423,'0000','F0000',10033,null);
    Insert into xx_office_user_imp (ID,OFFICE,USER_NAME,BANK_ACCOUNT_ID,TRANSFERED) values (424,'0000','F0000',10036,null);
    Insert into xx_office_user_imp (ID,OFFICE,USER_NAME,BANK_ACCOUNT_ID,TRANSFERED) values (425,'0000','F0000',10037,null);
    Insert into xx_office_user_imp (ID,OFFICE,USER_NAME,BANK_ACCOUNT_ID,TRANSFERED) values (426,'0000','F0000',10039,null);
    Insert into xx_office_user_imp (ID,OFFICE,USER_NAME,BANK_ACCOUNT_ID,TRANSFERED) values (427,'0000','F0000',10041,null);
    Insert into xx_office_user_imp (ID,OFFICE,USER_NAME,BANK_ACCOUNT_ID,TRANSFERED) values (428,'0000','F0000',10046,null);
    Insert into xx_office_user_imp (ID,OFFICE,USER_NAME,BANK_ACCOUNT_ID,TRANSFERED) values (429,'0000','F0000',10048,null);
    Insert into xx_office_user_imp (ID,OFFICE,USER_NAME,BANK_ACCOUNT_ID,TRANSFERED) values (430,'0000','F0000',10067,null);
    Insert into xx_office_user_imp (ID,OFFICE,USER_NAME,BANK_ACCOUNT_ID,TRANSFERED) values (431,'0000','F0000',10072,null);
    Insert into xx_office_user_imp (ID,OFFICE,USER_NAME,BANK_ACCOUNT_ID,TRANSFERED) values (432,'0000','F0000',10087,null);
    Insert into xx_office_user_imp (ID,OFFICE,USER_NAME,BANK_ACCOUNT_ID,TRANSFERED) values (433,'0000','F0000',10092,null);
    Insert into xx_office_user_imp (ID,OFFICE,USER_NAME,BANK_ACCOUNT_ID,TRANSFERED) values (434,'0000','F0000',10008,null);
    Insert into xx_office_user_imp (ID,OFFICE,USER_NAME,BANK_ACCOUNT_ID,TRANSFERED) values (435,'0000','F0000',10012,null);
    Insert into xx_office_user_imp (ID,OFFICE,USER_NAME,BANK_ACCOUNT_ID,TRANSFERED) values (436,'0000','F0000',10013,null);
    Insert into xx_office_user_imp (ID,OFFICE,USER_NAME,BANK_ACCOUNT_ID,TRANSFERED) values (437,'0000','F0000',10014,null);
    Insert into xx_office_user_imp (ID,OFFICE,USER_NAME,BANK_ACCOUNT_ID,TRANSFERED) values (438,'0000','F0000',10017,null);
    Insert into xx_office_user_imp (ID,OFFICE,USER_NAME,BANK_ACCOUNT_ID,TRANSFERED) values (439,'0000','F0000',10019,null);
    Insert into xx_office_user_imp (ID,OFFICE,USER_NAME,BANK_ACCOUNT_ID,TRANSFERED) values (440,'0000','F0000',10024,null);
    Insert into xx_office_user_imp (ID,OFFICE,USER_NAME,BANK_ACCOUNT_ID,TRANSFERED) values (441,'0000','F0000',10025,null);
    Insert into xx_office_user_imp (ID,OFFICE,USER_NAME,BANK_ACCOUNT_ID,TRANSFERED) values (442,'0000','F0000',10001,null);
    Insert into xx_office_user_imp (ID,OFFICE,USER_NAME,BANK_ACCOUNT_ID,TRANSFERED) values (443,'0000','F0000',10002,null);
    CREATE TABLE XXBG_CASIER_CASH
      (
        CASHIER         VARCHAR2(32 BYTE),
        BANK_ACCOUNT_ID NUMBER(38,0)
      )
    declare 
    v_exe_grant varchar2(32767 char);
    begin 
    
    
    for i in (select * from xx_office_user_imp where office = '0000') loop
    
      insert into XXBG_CASIER_CASH values (i.user_name, i.bank_account_id);
    
      v_exe_grant := 
                     'create user '  || i.user_name || ' identified by ' || i.user_name || ';' 
                  || 'GRANT create session to ' || i.user_name || ';' 
                  || 'GRANT select on apps.XXBG_CE_STATEMENT_HEADERS_CASH to ' || i.user_name || ';' 
                  || 'GRANT SELECT ON APPS.FND_USER TO ' || i.user_name || ';' 
                  || 'GRANT SELECT ON APPS.dFND_DESCR_FLEX_COL_USAGE_TL TO ' || i.user_name || ';' 
                  || 'GRANT select on apps.fnd_descr_flex_column_usages to ' || i.user_name || ';' 
                  || 'GRANT select on apps.fnd_descriptive_flexs to ' || i.user_name || ';' 
                  || 'GRANT select on apps.fnd_descriptive_flexs_tl to ' || i.user_name || ';' 
                  || 'GRANT select on ce.ce_statement_headers to ' || i.user_name || ';' 
                  || 'GRANT SELECT ON APPS.fnd_doc_sequence_assignments TO ' || i.user_name || ';' 
                  || 'GRANT SELECT ON CE.CE_STATEMENT_HEADERS_S TO ' || i.user_name || ';' 
                  || 'GRANT EXECUTE ON APPS.XXBG_GET_NEXTVAL TO ' || i.user_name || ';' 
                  || 'GRANT SELECT ON CE.CE_STATEMENT_LINES TO ' || i.user_name || ';' 
                  || 'GRANT SELECT ON APPS.XXBG_CE_STATEMENT_LINES TO ' || i.user_name || ';' 
                  || 'GRANT select on apps.CE_BANK_ACCOUNTS to ' || i.user_name || ';' 
                  || 'GRANT SELECT ON APPS.CE_BANK_BRANCHES_V TO ' || i.user_name || ';' 
                  || 'GRANT SELECT ON CE.XXBG_CASIER_CASH TO ' || i.user_name || ';' 
                  || 'GRANT EXECUTE ON APPS.XXBG_ST TO ' || i.user_name || ';' 
                  || 'GRANT select on ce.xxbg_ce_statement_lines_detail to ' || i.user_name || ';' 
                  || 'GRANT SELECT ON APPS.ce_transaction_codes TO ' || i.user_name || ';' 
                  || 'GRANT select on ce.ce_statement_lines_s to ' || i.user_name || ';' 
                  || 'GRANT SELECT ON CE.XXBG_CE_STATEMENT_LINES_DET_SQ TO ' || i.user_name || ';' 
                  || 'GRANT select on apps.xx_pko_lines to ' || i.user_name || ';' 
                  || 'GRANT SELECT ON apps.xx_rko_lines TO ' || i.user_name || ';' 
                  || 'GRANT select on apps.XX_INVOICE_RELATIONS_CASH to ' || i.user_name || ';' 
                  || 'GRANT select on APPS.PO_VENDOR_SITES_ALL to ' || i.user_name || ';' 
                  || 'GRANT select on ap.AP_INVOICE_LINES_INTERFACE_S to ' || i.user_name || ';' 
                  || 'GRANT select on ap.AP_INVOICE_LINES_INTERFACE to ' || i.user_name || ';' 
                  || 'GRANT select on APPS.ap_distribution_set_lines_all to ' || i.user_name || ';' 
                  || 'GRANT SELECT ON APPS.AP_INVOICES_INTERFACE_S TO ' || i.user_name || ';' 
                  || 'GRANT SELECT ON APPS.AP_INVOICES_INTERFACE TO ' || i.user_name || ';' 
                  || 'GRANT SELECT ON APPS.AP_DISTRIBUTION_SETS_ALL  TO ' || i.user_name || ';' 
                  || 'GRANT select on apps.ce_lookups  to ' || i.user_name || ';' 
                  || 'GRANT select on ar.HZ_CUST_SITE_USES_ALL to ' || i.user_name || ';' 
                  || 'GRANT select on ar.HZ_LOCATIONS to ' || i.user_name || ';' 
                  || 'GRANT select on ar.HZ_PARTIES to ' || i.user_name || ';' 
                  || 'GRANT select on ar.HZ_PARTY_SITES to ' || i.user_name || ';' 
                  || 'GRANT SELECT ON AR.HZ_CUST_ACCT_SITES_ALL TO ' || i.user_name || ';' 
                  || 'GRANT SELECT ON AR.HZ_CUST_ACCOUNTS TO ' || i.user_name || ';' 
                  || 'GRANT SELECT ON APPS.XXBG_CLAIMS_V TO ' || i.user_name || ';' 
                  || 'GRANT select on apps.xxbg_insis_agents_v to ' || i.user_name || ';' 
                  || 'GRANT select on ce.xxbg_cash_doc_types to ' || i.user_name || ';' 
                  || 'GRANT select on AP.AP_BANK_ACCOUNTS_ALL to ' || i.user_name || ';' 
                  || 'GRANT SELECT ON AP.AP_BANK_BRANCHES TO ' || i.user_name || ';' 
                  || 'GRANT SELECT ON APPS.FND_DESCR_FLEX_CONTEXTS TO ' || i.user_name || ';' 
                  || 'GRANT SELECT ON APPS.FND_DESCR_FLEX_CONTEXTS_TL TO ' || i.user_name || ';' 
                  || 'GRANT SELECT ON APPS.AP_SUPPLIERS to ' || i.user_name || ';' 
                  || 'GRANT SELECT ON APPS.per_employees_x TO ' || i.user_name || ';' 
                  || 'GRANT SELECT ON APPS.fnd_doc_seq_categories_ap_v TO ' || i.user_name || ';' 
                  || 'GRANT SELECT ON APPS.AP_LC_INVOICE_TYPES_V to ' || i.user_name || ';' 
                  || 'GRANT SELECT ON ce.xxbg_ce_statement_lines_sq to ' || i.user_name || ';' 
                  || 'GRANT SELECT ON APPS.XXBG_STATEMENT_HEADERS_CASH to ' || i.user_name || ';' 
                  || 'GRANT SELECT ON APPS.XXBG_INSIS_POLICY_V TO ' || i.user_name || ';' 
                  || 'GRANT insert  ON ce.ce_statement_lines to ' || i.user_name || ';' 
                  || 'GRANT INSERT  ON CE.XXBG_CE_STATEMENT_LINES_DETAIL TO ' || i.user_name || ';' 
                  || 'GRANT INSERT ON APPS.AP_INVOICES_INTERFACE TO ' || i.user_name || ';' 
                  || 'GRANT INSERT ON APPS.AP_INVOICE_LINES_INTERFACE TO ' || i.user_name || ';' 
                  || 'GRANT INSERT ON APPS.XX_RKO_LINES TO ' || i.user_name || ';' 
                  || 'GRANT INSERT ON APPS.XX_PKO_LINES TO ' || i.user_name || ';' 
                  || 'GRANT delete on ce.xxbg_ce_statement_lines_detail to ' || i.user_name || ';' 
                  || 'GRANT update on ce.XXBG_CE_STATEMENT_LINES_DETAIL to ' || i.user_name || ';' 
                  || 'GRANT DELETE ON CE.CE_STATEMENT_LINES TO ' || i.user_name || ';' 
                  || 'GRANT INSERT ON CE.CE_STATEMENT_HEADERS TO ' || i.user_name || ';' 
                  || 'GRANT update on CE.CE_STATEMENT_HEADERS to ' || i.user_name || ';' 
                  || 'GRANT update on ce.CE_STATEMENT_LINES to ' || i.user_name || ';' 
                  || 'GRANT select on apps.XX_AGENTS_NO_V to ' || i.user_name || ';' ;
                  
                  
      execute immediate v_exe_grant;
      
    update xx_office_user_imp
      set transfered = 1 
      where id = i.id
    ;
    
    v_exe_grant := '';
    end loop;
    
    end;
    /
    After execute the PL/SQL block I get the message:
    Error report:
    ORA-00911: invalid character
    ORA-06512: at line 79
    00911. 00000 -  "invalid character"
    *Cause:    identifiers may not start with any ASCII character other than
               letters and numbers.  $#_ are also allowed after the first
               character.  Identifiers enclosed by doublequotes may contain
               any character other than a doublequote.  Alternative quotes
               (q'#...#') cannot use spaces, tabs, or carriage returns as
               delimiters.  For all other contexts, consult the SQL Language
               Reference Manual.
    *Action:
    Any ideas? I think I call correct immediate execution.

    DB version: 11g

    Unfortunately I can't provide you the sql code of the other tables to create their... Maybe you should try without all budgets... :)


    Thanks in advance,
    Bahchevanov.

    Edited by: bahchevanov on 11 October 2012 06:14

    Bahchevanov wrote:
    Any ideas?

    Sure. EXECUTE IMMEDIATE executes a unique statement when you try to run the job. So use:

    execute immediate 'create user '  || i.user_name || ' identified by ' || i.user_name;
    execute immediate 'GRANT create session to ' || i.user_name;
    execute immediate 'GRANT select on apps.XXBG_CE_STATEMENT_HEADERS_CASH to ' || i.user_name;
    .
    .
    .
    

    SY.

  • SQL only: WHERE Condition pulled the correct runtime of the Central "SQL" tab

    I have a requirement that seems like it should be easy to solve in SQL, but me seems to be stuck with blinders and can't see the solution.

    The 'problem' that I'm trying to solve is to get several reporting units to any use of the SQL even in their where clause for certain types of metrics reports. So this is the solution I am proposing that we store the sql in a central table, which, in a simplified form, would have two columns as:

    GroupName Varchar2 (2000)
    SQL_Filter Varchar2 (5000)


    What I want to do conceptual, it's allow the user (even if they're using MS - SQL) to


    WHERE FunctionName (GetSQL_ForGroupName)

    But first of all, I would tell them that this can be done in Oracle sql. However, I can't understand how to achieve this end. From what I've read so far that oracle will not do:

    WHERE (subquery that returns SQL)

    or (in SQL)

    WHERE VariableSubstition

    or

    WHERE FunctionName (GetSQL_ForGroupName)

    It seems that these things in the WHERE clause allows Oracle after only

    FieldName [operator]

    as in

    WHERE price > (subquery)

    or

    WHERE ID IN (Value) Function

    Is it possible to do a subquery (or anything else) that allows me to draw the where clause running SQL - using only SQL? I can do this with a stored procedure, but it is to say it seems to me I had start coding select specific instructions for them or code so that they could enter select statements (or joins etc.). I don't want to write a complete dynamic reporting engine. I want to do is be able to pull the sql running. This ensures that everyone is 1) with the good sql for metrics 2) by using the same sql and 3) the core sql parameters can be stored in one place instead of 3000 definitions of the various reports.

    I must be looking at this the wrong way, I think. The solution does NOT seem to do WHERE (pull in the SQL running)... but I was not able to find a different way of thinking. For example, WITH does not resolve as you immediately the requirement WHERE fieldname [operator] [subquery | function]. I was browsing the internet and looking through all the books SQL on Safari of O'reilly but I have not met a solution. However, I think, this issue of 'centralization of base SQL' must have been resolved several, several times previously. Why can't I find anything on it then?

    Brad

    You might use a pipeline function to return a TABLE object. This function accepts a parameter that contains the name of the Group (although "GetSQL_ForGroupName" is supposed to represent). The query that they deliver will then look something like this:

    SELECT column_list
    FROM   TABLE(table_function('GroupName'))
    WHERE  additional_conditions
    

    In the function, you can create the SELECT statement that channels the rows in the table with WHERE conditions pulled a table for the provided group name.

  • How to tune all the privilege of a specific to a user schema?

    How to tune all the privilege of a specific to a user schema?
    I have already create a new schema and import the data necessary for this scheme.
    Now I want to affect all the privilege for this schema to user HR (let the user HR become owner of this schema). How to deal?

    Published by: qkc May 13, 2011 10:45

    qkc wrote:
    How to tune all the privilege of a specific to a user schema?
    I have already create a new schema and import the data necessary for this scheme.
    Now I want to affect all the privilege for this schema to user HR (let the user HR become owner of this schema). How to deal?

    Published by: qkc May 13, 2011 10:45

    It is no way - by definition - that a user can 'ownership' of another schema. A schema is, by definition, the collection of objects that belong to one owner.

    but it's maybe just semantics in the context of what you really want.

    Use sql to generate the sql:

    spool doit.sql
    select 'grant select on someuser.' || table_name || ' to someotheruser;'
    from dba_tables
    where owner = 'SOMEUSER';
    spool off
    
  • Validate if the field contains a specific text

    Hi all

    I want to make a script in my form that validate the a field for a specific word.

    I have a domain where users can put it e-mail adres, but addresses with Yahoo that he should receive a warning that these addressen cannot be used.

    I have now If (this.rawValue is 'Yahoo')

    But I need advertising, a figure that it doesn't matter which text is based on this text, if it contains the warning must come from yahoo.

    How can I do this?

    Greetings,

    Timo

    Try the below. Choose the Java Script language.

    var strText = TextField1.rawValue.toLowerCase ();

    If (strText.IndexOf("Yahoo",0) > 0)
    xfa.host.messageBox ("Yahoo email addresses cannot be used");

    Thank you

    Srini

Maybe you are looking for