dbms_job. Submit insertion values in a table using stored procedure

values are inserted into a table by using the stored procedure by using the sequence and creating a job to trigger after every 10 seconds...

create table test (collar number);

table created.

create sequences seq_test
start with 1
Increment 1;

order of creation.

create or replace procedure sp_test is
Start
loop
Insert into test values (seq_test.nextval);
end loop;
commit;
end;

created stored procedure

Report the number of jobno;
BEGIN
DBMS_JOB. SUBMIT)
jobs = >: jobno.
This = > 'sp_test;',
next_date = > TRUNC (SYSDATE + 1/1440).
interval = > 'SYSDATE + 10/86400',.
no_parse = > TRUE
);
COMMIT;
END;

stored procedure created successfully



every thing is done, but why the feature is always wrong...
Please help me

Hello

Lucien wrote:
...
create or replace procedure sp_test is
Start
loop
Insert into test values (seq_test.nextval);
end loop;
commit;
end; ...

Have you tested this procedure first? It has an infinite loop. If this is the case, it's inserting row after row in the table, but never to commit, because he never leaves the loop.

It seems that what you posted is a much simplified version of what you really do. Simplify things for posting on this forum is a good idea, but this one is so simple that I don't see the point of it, so I can't offer a better way to do. Maybe you shouldn't have a loop in the process. Whatever you do, test it before you submit it as a job.

Tags: Oracle

Similar Questions

  • Gears - error when you try to insert values into a table with multiple columns

    Hello

    I started playing with the gears and SQlLite today and I get an error when I try to insert values into a table with multiple columns.

    I have:

    var db = google.gears.factory.create('beta.database');
        db.open('developerSet');
        db.execute('create table if not exists Developers (DeveloperName text, DeveloperAge int)');
    
        var devName = "Davy"
        var devAge = 32;
    
        try {
            db.execute('insert into Developers values (?, ?)', [devName, devAge]);
            alert('success');
        }
        catch (e) {
            alert(e);
        }
    

    I get the error:

    net.rim.device.api.database.DatabaseException; insert into developers values (?,?): SQL logic error or missing database.

    I use this reference: http://code.google.com/apis/gears/api_database.html

    Everything works if I have only one field as:

    var db = google.gears.factory.create('beta.database');
        db.open('developerSet');
        db.execute('create table if not exists Developers (DeveloperName text)');
    
        var devName = "Davy"
        var devAge = 32;
    
        try {
            db.execute('insert into Developers values (?)', [devName]);
            alert('success');
        }
        catch (e) {
            alert(e);
        }
    

    I use the plug-in Visual Studio 2.0 for 2008 that are running Windows XP SP and Simulator 2.13.0.56

    Thank you

    Davy

    Yes, a SQLite database will persist between battery pulls.  The database is registered either to internal MEM or removable media (not the device memory), depending on which is available on your device.

    In general, its not considered a best practice to remove your table as soon as it is empty and re - create it again when you want to add data.  This adds extra overhead fresh for the final, delete and insert first for a given table.  Instead, define and finalize your drawing before you create your table.  Once created, review the static schema.

    That being said, for development purposes, it may be easier to provide an easy way to drop your tables while you develop your schema.

    See you soon,.

    Adam

  • table name not valid error when inserting values into a table

    I use the following statement to insert values into a table:

    curs. Execute ("INSERT INTO _ * '%s' * _ VALUES ((SELECT MAX (REC_ID) + 1 OF GSAP_MSG_IN), (SELECT MAX (gsap_msg_id) + 1 OF GSAP_MSG_IN), 'SHELLSAP', sysdate, '%s', EMPTY_BLOB(), 1, SYSDATE, EMPTY_BLOB (), SYSDATE)" %(*table_name*,file_extension)) ")

    whence table_name the following statement

    table_name = ' config.staging_db_tablesNames ['in_msgs]

    as I created a configuration file for all parameters that can change. The value of the table in the audit using a print command is correctly, but when put in the query above to run the insert statement gives an error. The following is the summary of comprehensive performance where you can see the table name as

    $ python gsapscnr.py
    Vote for the data files in/home/mh/inbox /...

    GSAP_MSG_IN
    Traceback (most recent call changed):
    File "gsapscnr.py", line 147, in it?
    poll_for_data()
    File "gsapscnr.py", line 86, in poll_for_data
    Sorter = load_details_first)
    File "gsapscnr.py", line 42, survey
    curs. Execute ("INSERT INTO '%s' VALUES ((SELECT MAX (REC_ID) + 1 OF GSAP_MSG_IN), (SELECT MAX (gsap_msg_id) + 1 OF GSAP_MSG_IN), 'SHELLSAP', sysdate, '%s', EMPTY_BLOB(), 1, SYSDATE, EMPTY_BLOB (), SYSDATE)" %(table_name,file_extension)) ")
    cx_Oracle.DatabaseError: ORA-00903: invalid table name

    Can anyone help with this problem please. I'm passing the value of the table in a bad way. Also if anyone can suggest a good tutorial for paythong programming using cx_Oracle.

    Concerning

    Print the SQL string that you establish, cut and paste it this output in SQL * more and see if it runs. This may show you that you should remove the single quotes around the name of the table %s in the Python file.

  • using stored procedures - I can't seem to get the right settings

    I am wanting to use stored procedures to create variables of substitution use UC4 (Appworx). (the databases I use are 10g) To do this, I first need to run command line in PL/SQL procedures. I don't seem to be able to create the correct command. This is the part of the package that I want to call



    CREATE OR REPLACE
    PACKAGE BODY 'APPLICATION_PACKAGE' AS


    PROCEDURE GET_APP_PARAM (V_APP_PARAM_ID IN CCOK. CC_APP_PARAM_DETAIL. APP_PARAM_ID % TYPE,
    V_APP_PARAM_NAME IN CCOK. CC_APP_PARAM_DETAIL. APP_PARAM_NAME % TYPE,
    OUT NOCOPY CCOK V_APP_PARAM_VALUE. CC_APP_PARAM_DETAIL. APP_PARAM_VALUE % TYPE)


    AS


    BEGIN

    SELECT APP_PARAM_VALUE
    IN V_APP_PARAM_VALUE
    TO CCOK. CC_APP_PARAM_DETAIL
    WHERE APP_PARAM_ID = V_APP_PARAM_ID
    AND APP_PARAM_NAME = V_APP_PARAM_NAME;


    END;




    It's the exact command I use command line

    run application_package.get_app_param(1000,'RUN_TYPE')

    When I do this I get invalid statements expected but still tweaking doesn't fix it and does not give me a clear idea of what I need to do to fix it.
    I get this sort of thing


    SQL & gt; run ccok.application_package.get_app_param(1000,'run_type')
    BEGIN ccok.application_package.get_app_param(1000,'run_type'); END;


    *
    ERROR on line 1:
    ORA-06550: line 1, column 7:
    PLS-00306: wrong number or types of arguments in the call to 'GET_APP_PARAM '.
    ORA-06550: line 1, column 7:
    PL/SQL: Statement ignored



    SQL & gt; run ccok.application_package.get_app_param(1000,'run_type',:result)
    SP2-0552: Bind variable 'RESULT' undeclared.
    SQL & gt; run ccok.application_package.get_app_param('1000','run_type')
    BEGIN ccok.application_package.get_app_param('1000','run_type'); END;


    *
    ERROR on line 1:
    ORA-06550: line 1, column 7:
    PLS-00306: wrong number or types of arguments in the call to 'GET_APP_PARAM '.
    ORA-06550: line 1, column 7:
    PL/SQL: Statement ignored



    Any help will be appreciated with more recognition.

    It's interesting.

    Package specification has "GET_APP_PARAM" with 2 parameters.
    The package body has "GET_APP_PARAM" with 3 settings.

    I tested this out case in my db. Oracle balk when the package body is compiled, but shows no errors.

    test@ORA10G> --
    test@ORA10G> DROP PACKAGE "APPLICATION_PACKAGE";
    
    Package dropped.
    
    test@ORA10G>
    test@ORA10G> drop table cc_app_param_detail;
    
    Table dropped.
    
    test@ORA10G> create table cc_app_param_detail (
      2    app_param_id    number(4),
      3    app_param_name  varchar2(20),
      4    app_param_value varchar2(20));
    
    Table created.
    
    test@ORA10G>
    test@ORA10G> insert into cc_app_param_detail
      2  select 1, 'name_1', 'value_1' from dual union all
      3  select 2, 'name_2', 'value_2' from dual union all
      4  select 3, 'name_3', 'value_3' from dual;
    
    3 rows created.
    
    test@ORA10G> commit;
    
    Commit complete.
    
    test@ORA10G>
    test@ORA10G> select * from cc_app_param_detail;
    
    APP_PARAM_ID APP_PARAM_NAME       APP_PARAM_VALUE
    ------------ -------------------- --------------------
               1 name_1               value_1
               2 name_2               value_2
               3 name_3               value_3
    
    test@ORA10G>
    test@ORA10G> --
    test@ORA10G> CREATE OR REPLACE PACKAGE "APPLICATION_PACKAGE" AS
      2    PROCEDURE GET_APP_PARAM (
      3      V_APP_PARAM_ID IN TEST.CC_APP_PARAM_DETAIL.APP_PARAM_ID%TYPE,
      4      V_APP_PARAM_NAME IN TEST.CC_APP_PARAM_DETAIL.APP_PARAM_NAME%TYPE);
      5  --    V_APP_PARAM_VALUE OUT NOCOPY TEST.CC_APP_PARAM_DETAIL.APP_PARAM_VALUE%TYPE);
      6  END;
      7  /
    
    Package created.
    
    test@ORA10G> show err
    No errors.
    test@ORA10G>
    test@ORA10G> DESC APPLICATION_PACKAGE
    PROCEDURE GET_APP_PARAM
     Argument Name                  Type                    In/Out Default?
     ------------------------------ ----------------------- ------ --------
     V_APP_PARAM_ID                 NUMBER(4)               IN
     V_APP_PARAM_NAME               VARCHAR2(20)            IN
    
    test@ORA10G>
    test@ORA10G>
    test@ORA10G> CREATE OR REPLACE PACKAGE BODY "APPLICATION_PACKAGE" AS
      2    PROCEDURE GET_APP_PARAM (
      3      V_APP_PARAM_ID    IN TEST.CC_APP_PARAM_DETAIL.APP_PARAM_ID%TYPE,
      4      V_APP_PARAM_NAME  IN TEST.CC_APP_PARAM_DETAIL.APP_PARAM_NAME%TYPE,
      5      V_APP_PARAM_VALUE OUT NOCOPY TEST.CC_APP_PARAM_DETAIL.APP_PARAM_VALUE%TYPE)
      6    AS
      7    BEGIN
      8      SELECT APP_PARAM_VALUE
      9      INTO V_APP_PARAM_VALUE
     10      FROM TEST.CC_APP_PARAM_DETAIL
     11      WHERE APP_PARAM_ID = V_APP_PARAM_ID
     12      AND APP_PARAM_NAME = V_APP_PARAM_NAME;
     13    END;
     14  END;
     15  /
    
    Warning: Package Body created with compilation errors.
    
    test@ORA10G> show err
    No errors.
    test@ORA10G>
    test@ORA10G>
    test@ORA10G> --
    test@ORA10G> var x varchar2(10)
    test@ORA10G> exec test.application_package.get_app_param(1,'name_1',:x);
    BEGIN test.application_package.get_app_param(1,'name_1',:x); END;
    
          *
    ERROR at line 1:
    ORA-06550: line 1, column 7:
    PLS-00306: wrong number or types of arguments in call to 'GET_APP_PARAM'
    ORA-06550: line 1, column 7:
    PL/SQL: Statement ignored
    
    test@ORA10G> print x
    
    X
    --------------------------------
    
    test@ORA10G>
    test@ORA10G>
    test@ORA10G> select object_type, object_name, status from user_objects where object_name='APPLICATION_PACKAGE';
    
    OBJECT_TYPE         OBJECT_NAME                    STATUS
    ------------------- ------------------------------ -------
    PACKAGE             APPLICATION_PACKAGE            VALID
    PACKAGE BODY        APPLICATION_PACKAGE            INVALID
    
    test@ORA10G>
    test@ORA10G>
    

    What do you see as the State of the art and the body when he is interviewed command-line SQL * more?

    The solution would be to add the third parameter to the package specification and recompile.

    HTH,
    isotope

  • Dynamic temporary Table in stored procedure

    Dear expert,

    I'm trying to convert a database from MSSQL to Oracle 11 g. But I'm a little stuck on dynamic temporary tables in stored procedures.

    MS is normalize the data out dynamic SQL statements. In TSQL so I've created a Temp table with the number of columns that the SQL statement has, that I executed the SQL statement in the temporary table and then I was going to all the columns with the prompting separate command standard. Finally, I wrote the key table.

    If I want to do this process with only on SP, dynamic, rather than to define for each normalization process its own SP, so this possiple in Oracle?

    For example. "INSERT INTO Temp (PartNo, Descr, Type, price) SELECT PartNo, Descr, price from parts.

    PartNo. Descr | Type | Price
    AB00 | AKER GD245 | Monitor | 200.00
    AB01 | Samir QQ22 | Monitor | 120.00
    AQ05 | HB 5500DN | Printer | 550.00

    SELECT @R = Max (PartKey) of N_Parts
    INSERT INTO N_Parts (PartKey, PartNo) SELECT RowNum + @R, PartNo FROM (SELECT DISTINCT PartNo FROM Temp INCLUDING PartNo NOT IN (SELECT PartNo of N_Parts));
    SELECT @R = Max (PartDKey) of N_PartsDescr
    INSERT INTO N_PartsDescr (PartDKey, Descr) SELECT RowNum + @R, Descr FROM (SELECT DISTINCT Descr FROM Temp WHICH Desrc NOT IN (SELECT Desrc from N_Parts));
    ...

    Insert into Part_Data (PartKey, PartDKey, PartTKey, PartPKey)
    SELECT T0. PartKey, T1. PartDKey, T2. PartTKey, T3. Temp PartPKey T
    INNER JOIN N_Parts T0 to T0. PartNo = T.PartNo
    JOIN IN-HOUSE...

    So what is the best way, do not generate this dynamic Table Temp?

    Published by: 926165 on 08.04.2012 08:26

    926165 wrote:
    I'm trying to convert a database from MSSQL to Oracle 11 g. But I'm a little stuck on dynamic temporary tables in stored procedures.

    Just my 2 cents here.

    Conversion of database provider A to B of database provider is never really a great idea. The products are fundamentally different in many ways. Analysis of demand that needs to be ported from database at database B and then its implementation in a specific way to take advantage of the features of your new environment, accounting for all the differences between the implementations of provider will be your best bet.

    I say this because, for me at least, a conversion means that you take what you have and it in slam in what you need. The better approach is to analyse, design (to explain the differences in behavior between vendor implementations, such as mechanisms for read consistency) and proceed from there. This way, you have a solid base on which to start, instead of a skyscraper built out of toothpicks.

    See you soon,.

  • Report of ColdFusion using stored procedures

    I have isntalled report 10 ColdFusion and connected to the RDS Server.

    I just saw tables and views, but not stored procedures.

    I would like to know it is possible to use stored procedures for the report data source.

    Your information and help is much appreciated,

    Kind regards

    Iccsi,

    Thank you fo rhelping and informaiton.

    I found that it supports the stored procedures,

    Kind regards

    iccsi

  • Problem with the Entity Framework by using stored procedures

    I am developing a project with Oracle DB and Entity Framework.
    Due to performance issues, for some querys I uses procedures stored instead of LINQ queryies,
    When I try to add my model EF procedure, the procedure is added but the Model Designer
    It does not acknowledge the columns returned by the procedure.
    so I can't create something complex to the user the results of the procedure
    in a domain service

    Here's the relevant readme which has some tips: http://www.oracle.com/technetwork/topics/dotnet/tech-info/default-338300.html#mozTocId610465

    If you do a forum search there is further discussion of the issues, and the readme file provided with version beta has also some information.

    But I agree with the general theme: using stored procedures in the EF is a PITA. :( I really hope they do something to make it easier in the future because this is probably the single most important weakness in the implementation of Oracle EF and establishment of a complex type is your time and picky it's ridiculous. (I found it less problematic if your procedure returns a complete picture that your model has already an entity for, because you can get away with only add the entry to one of the configurations for the cursor rather than one for each column.)

    Even an external tool where direct you to the procedure and it creates the configuration entries to be able to copy and paste would be a huge improvement.

  • "missing the SELECT keyword" error during an insert into the temporary table using the blob value

    I'm trying to insert into an oracle temp table using select that retrieves data from a blob field but I get the error: "lack the SELECT keyword.

    How we store temporary in oracle result when we make this type of operation (extraction of data in fields and try to load them into a separate table on the fly.?)

    with cte as)

    Select user_id, utl_raw.cast_to_varchar2 (dbms_lob.substr (PREFERENCES)) as USER my_blob

    )

    create table new_table as

    SELECT user_id,EXTRACTvalue(xmltype(e.my_blob),'/preferences/locale') regional settings

    E ETC

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

    BLOB data - value - which is

    <? XML version = "1.0" encoding = "ISO-8859-1" ?>

    - < Preferences >

    < time zone > America/New_York < / > zone

    < displayscheduleinusertimezone > Y < / displayscheduleinusertimezone >

    < local > Spanish < /locale >

    < DateFormat > JJ/mm/aaaa < / DateFormat >

    < timeFormat > hh: mm aaa < / timeFormat >

    < longformat > Long_01 < / longformat >

    < doubleformat > Double_01 < / doubleformat >

    < percentformat > Percentage_01 < / percentformat >

    < currencyformat > Currency_01 < / currencyformat >

    < / Preferences >

    A WITH clause that must immediately precede the SELECT keyword:

    SQL > create table t:

    2 with the o as (select double dummy)

    3 select * West longitude;

    Table created.

  • Problem inserting values into a table

    Hi all

    I'm newbe and I'm stack.
    I have a human tasks (model begun), which contains 4 input fields (all channels).
    I have a complex data type called Test, which is defined as 2 channel fileds (Description and result) and a registered number (test).
    I have a Test table, insiemiDiTest.
    What I want to do is to create 2 test object in the input fields and insert in the insiemiDiTest table, to then be able to use the loop to insert into the DB.
    Assume that the user insert the following information in the filed entry:
    INPUT1 descrTest1
    ResultTest1-INPUT2
    INPUT3 descrTest2
    INPUT4 resultTest2
    I want to play in the process of the insiemiDiTest variable of length 2 and the following content:
    insiemiDiTest [1] .testNumber = 1
    insiemiDiTest [1] .description = descrTest1
    insiemiDiTest [1] property = resultTest1
    insiemiDiTest [2] .testNumber = 2
    insiemiDiTest [2] .description = descrTest2
    insiemiDiTest [2] property = resultTest2

    If I use data binding and I have a link
    INPUT1 with .description insiemiDiTest [1]
    INPUT2 with property insiemiDiTest [1]
    Number('1') with .testNumber insiemiDiTest [1]
    I get an error saying that the insiemiDiTest [1] .description is empty and cannot be copied.

    Unfortunaly I can't directly use the table in the task of the user, because later I have to use the conversation when the calling process and we found I have limitation.
    I can get an indication on how to do it.
    I'm approccing in the right way or am I completely wrong?
    Thanks in advance and Merry Christmas.

    Because your input is coming from a few strings and not a table, you can just add a Script activity to your process and to define table of your target XSD using XML.

    To do this, you must add a Script to the activity-> click on "Data Associations"-> drag the icon above your target expression builder object on the right side (not the table but the table parent)-> open the XPath expression box in the Middle-> click 'XPath Exp' in the drop-down list at the top.

    I don't know what your XSD, but in the text below, I tried to show you the XML you need for this XPath expression using the values you provided.

    oraext:parseXML(concat('
    
      
        ','1','
        ',bpmn:getDataObject('descTest1'),'
        ',bpmn:getDataObject('resultTest1'),'
      
    
      
        ','2','
        ',bpmn:getDataObject('descTest2'),'
        ',bpmn:getDataObject('resultTest2'),'
      
    
    '))
    

    When I 'bpmn:getDataObject('...')', you should rather to insert your data object variables four your process chain.

    Hope this helps,
    Dan

  • API to insert values into the table of apps

    Hello

    I created a table with front end applications. Creating columns and rows. Now, I want to insert values in different columns of the corresponding lines.
    Can you get it someone please let me know the API that I can use here to insert the column values?

    Kind regards!

    If you want to insert data in the standard table oracle, then you must use the api instead, then apply the insert statement, this api oracle used to check the validation of the company etc.

    Regarding the concern with regard to insert the date as you said, this is why you should use this api 'PAY_USER_COLUMN_INSTANCE_API' to insert data in pl/sql script.

  • Insert table with stored procedure

    Hello

    is it possible to use bind insert table in odp.net that calls a stored procedure, or who loses the point of contact of the table?

    I need to do at once two insertions in a parent table and the child table (get the primary key generated by a sequence in the first table.). Don't know if this can be done without storing seq.next_val somehow?

    Edit: I will extend the question and ask if the table bind sql text can be a block anonymous plsql

    Edited by: KarlTrumstedt 16-jun-2010 02:49

    You can do both. You can table insert a stored procedure and an anonymous block.

    Here's how (these are based on the ArrayBind example provided with the installation of ODP.net/ODT.

    Installation program:

    create table zdept (deptno number, deptname varchar2(50), loc varchar2(50));
    
    CREATE OR REPLACE PROCEDURE ZZZ (p_deptno in number, p_deptname in varchar2, p_loc in varchar2) AS
    begin
        insert into zdept values(p_deptno , p_deptname || ' ' || p_deptname, p_loc );
    end zzz;
    
     /**
     drop table zdept ;
     drop procedure ZZZ ;
     **/
    

    table and link it to the stored procedure call:

       static void Main(string[] args)
        {
          // Connect
          string connectStr = "User Id=;Password=;Data Source=";
    
          // Setup the Tables for sample
          Setup(connectStr);
    
          // Initialize array of data
          int[]    myArrayDeptNo   = new int[3]{1, 2, 3};
          String[] myArrayDeptName = {"Dev", "QA", "Facility"};
          String[] myArrayDeptLoc  = {"New York", "Maryland", "Texas"};
    
          OracleConnection connection = new OracleConnection(connectStr);
          OracleCommand    command    = new OracleCommand (
            "zzz", connection);
          command.CommandType = CommandType.StoredProcedure;
    
          // Set the Array Size to 3. This applied to all the parameter in
          // associated with this command
          command.ArrayBindCount = 3;
          command.BindByName = true;
          // deptno parameter
          OracleParameter deptNoParam = new OracleParameter("p_deptno",OracleDbType.Int32);
          deptNoParam.Direction       = ParameterDirection.Input;
          deptNoParam.Value           = myArrayDeptNo;
          command.Parameters.Add(deptNoParam);
    
          // deptname parameter
          OracleParameter deptNameParam = new OracleParameter("p_deptname", OracleDbType.Varchar2);
          deptNameParam.Direction       = ParameterDirection.Input;
          deptNameParam.Value           = myArrayDeptName;
          command.Parameters.Add(deptNameParam);
    
          // loc parameter
          OracleParameter deptLocParam = new OracleParameter("p_loc", OracleDbType.Varchar2);
          deptLocParam.Direction       = ParameterDirection.Input;
          deptLocParam.Value           = myArrayDeptLoc;
          command.Parameters.Add(deptLocParam);
    
          try
          {
            connection.Open();
            command.ExecuteNonQuery ();
            Console.WriteLine("{0} Rows Inserted", command.ArrayBindCount);
          }
          catch (Exception e)
          {
            Console.WriteLine("Execution Failed:" + e.Message);
          }
          finally
          {
            // connection, command used server side resource, dispose them
            // asap to conserve resource
            connection.Close();
            command.Dispose();
            connection.Dispose();
          }
        }
    

    "anonymous plsql block.
    Well Yes

        static void Main(string[] args)
        {
          // Connect
          string connectStr = "User Id=;Password=;Data Source=";
    
          // Setup the Tables for sample
          Setup(connectStr);
    
          // Initialize array of data
          int[]    myArrayDeptNo   = new int[3]{1, 2, 3};
          String[] myArrayDeptName = {"Dev", "QA", "Facility"};
          String[] myArrayDeptLoc  = {"New York", "Maryland", "Texas"};
    
          OracleConnection connection = new OracleConnection(connectStr);
          OracleCommand    command    = new OracleCommand (
            "declare dnumber number; dname varchar2(50) ; begin dnumber := :deptno;dname := :deptname;insert into zdept values (:deptno, :deptname, :loc); update zdept set deptname=dname || :loc where deptno = :deptno; end;", connection);
    
          // Set the Array Size to 3. This applied to all the parameter in
          // associated with this command
          command.ArrayBindCount = 3;
          command.BindByName = true;
          // deptno parameter
          OracleParameter deptNoParam = new OracleParameter("deptno",OracleDbType.Int32);
          deptNoParam.Direction       = ParameterDirection.Input;
          deptNoParam.Value           = myArrayDeptNo;
          command.Parameters.Add(deptNoParam);
    
          // deptname parameter
          OracleParameter deptNameParam = new OracleParameter("deptname", OracleDbType.Varchar2);
          deptNameParam.Direction       = ParameterDirection.Input;
          deptNameParam.Value           = myArrayDeptName;
          command.Parameters.Add(deptNameParam);
    
          // loc parameter
          OracleParameter deptLocParam = new OracleParameter("loc", OracleDbType.Varchar2);
          deptLocParam.Direction       = ParameterDirection.Input;
          deptLocParam.Value           = myArrayDeptLoc;
          command.Parameters.Add(deptLocParam);
    
          try
          {
            connection.Open();
            command.ExecuteNonQuery();
            Console.WriteLine("{0} Rows Inserted", command.ArrayBindCount);
          }
          catch (Exception e)
          {
            Console.WriteLine("Execution Failed:" + e.Message);
          }
          finally
          {
            // connection, command used server side resource, dispose them
            // asap to conserve resource
            connection.Close();
            command.Dispose();
            connection.Dispose();
          }
        }
    
  • How to use stored procedures of database instead of triggers in database?

    Hi gurus

    Here in SQL / PLSQL community discussion, I read some discussions that the stored procedures of database are better and 9should be used instead of database triggers.

    But despite reading 10s of discussions, I am unable to understand how a stored procedure may be an alternative to a DB-trigger while having many differences.

    And even if I'm using a DB instead of DB-trigger procedure, then at what level I should call? of my application, oracle forms IE?

    And should I write 3 different procedures, each of them for the Insert, update and delete while I can manage all of these events from a single trigger?

    Will you please advice me for this because I am using widely especially triggers to maintain the Stock / inventory, update several tables of a trigger n etc.

    PS... I'm working on the database 10g Rel.2.

    I use extensively since Oracle 7 database triggers (database Oracle 6 had no triggers).

    I use it mainly for complex integrity checks and sometimes for the calculation of derived data.

    So, I do not accept that "database triggers are evil".

    It is often said that, instead of triggers in database, we use the API (API function, better than the table API).

    However, the API may not always replace triggers.

    Excellent explanation is given by Toon Koppelaars in 'triggers considered harmful, considered harmful' http://harmfultriggers.blogspot.com/

    Regarding your question, it is possible to make the procedures of database to work with Forms - Yes, it is possible.

    You can make the database to INSERT, UPDATE, and DELETE procedures and call them before or / and after INSERT / UPDATE / DELETE triggers of forms.

    Another option is to use on INSERT / UPDATE / DELETE triggers of forms.

    Please note that I do not use these forms to work with the Oracle database triggers. In my view, database triggers are much better.

    The third variant will create a data block in a procedure that uses a "table of records.

    Kind regards

    Zlatko

  • How to create temporary tables in stored procedures.

    Hello

    I am new to oracle, I have a requirement where I need to run a query in a loop for different values of where condition. Here, I need to record the results of the query on each iteration. After the end of the loop, I need to send the results to the front end. I did a lot of research for the concept of the temporary table in oracle, but I found myself unresolved except headaches. Everyone is showing how to create temporary tables in general but not in stored procedure.

    Bad, I need the concept of temporary tables, or is there an alternative way to store temporary results. My procedure looks like this.

    create or replace
    procedure uspMatchCode (parWord varchar2, p_recorderSet to types.cursor_type)
    as
    smallint parCnt;
    Start
    parcnt: = 0;
    Select count (1) in parCnt of...;
    If parcnt > 0 then
    Open for P_recorderSet
    Select field1, field2, field3,... of table1, table2, table2 where < < condition > >
    on the other
    -Here, I want to create a temporary table and store the result for the loop shape into the temporary table.
    CREATE TEMPORARY TABLE global my_temp_table (NUMBER of Column1, Column2) ON COMMIT DELETE ROWS.
    FOR parCnt in 0.3
    loop
    INSERT into my_temp_table select Field1, Field2, field3,... from table1, table2, table2 where < < condition > >
    end loop;
    Open for P_recorderSet
    Select * from < < temporary table > >
    end if;
    end;

    Any help would be great to check me on the problem.

    Thank you
    Kiran.

    This is a change to the query Kiss has posted:

    with data_text like)
    Select regexp_substr (' sales financing marketing ',' [^] +', 1, level ") val
    of tconnect by level<= length('sales="" finance="" marketing')-="" length(replace('sales="" finance="" marketing','="">
    )
    Select * from t, data_text, where t.colname like '% "| data_text. Val |' %'

    This will help you. Please change the column names and the name of the table as a result

  • Temporary tables in stored procedure

    Hello

    I write a stored procedure that will get data from different sources and generates a spreadsheet finally. Initial selection gets the basic data and chooses then merges the data.

    To do this, I created a table in the database, I'm filling in data in this table by using the same procedure and finally selection of data in this table to generate the worksheet.

    Now, I plan to use the TEMPORARY table instead of create database table. Can someone tell me where I can watch examples for temporary tables?

    What is the best option in performance wise?

    or

    I can handle the whole scenario with slider? examples?

    Hello

    Why you cannot use an ordinary table?

    Search for [Global Temporary | http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/statements_7002.htm#sthref7247] in the diocumentation, including SQL * manual language, an alternative.

    'Temporary' applies only to the data. A global temporary Table is created once and remains until you DROP, the same as any other table.
    The data in the table are temporary. If you create the table by saying "ON COMMIT PRESERVE ROWS" (which seems appropriate, according to your description) the data will be automatically deleted when you end the session database.

    All global data in temporary Tables are specific to the session. If two (or more) people use the same table at the same time, each one will see data that they inserted themselves; they'll never see rows inserted by the other session.

    Almost everything you can do with an ordinary table, you can do with a global temporary Table. In particular, DML (such as FUSION) and cursors work exactly as they do on other tables.

  • roles authenticated using stored procedures does not...

    Mr President.
    See the steps I went through that
    create user100 user identified by 123;
    create user101 user identified by 123;
    Grant create session, create role, create the procedure to user100;
    Grant connect to user101;
    change the quota of the user user100 10 M on users;
    grant create table to user100 with admin option;
    Conn user100/123
    create or replace procedure settingrole as
    Start
    dbms_Session.set_role ('dummy');
    end;
    /
    create the dummy role identified using user100.settingrole;
    grant create table to dummy;

    Grant execute on settingrole to user101;



    Conn user101/123

    execute user100.settingrole;
    now the error I get is ora-06565 cannot run set role in stored procedures
    ORA-065512 to the sys.dbms_session line

    can u help me please how to do this job

    You must create the procedure with the right of the applicant (article AUTHID CURRENT_USER). See more on the secure application role http://download.oracle.com/docs/cd/B28359_01/server.111/b28337/tdpsg_privileges.htm#CIHHGDAE tutorial

Maybe you are looking for

  • Firefox will not open my email. default.aspx appears

    Need me for my hotmail, but after I entered my name and password default.aspx appears and which is as far as I can get

  • Qosmio X 770-Bluetooth does not turn on

    Hello I have a toshiba Qosmio X 770 with built in without wireless/bluetooth. I've had the computer for almost a year and finally bought a bluetooth device to use. However, when you set up the bluetooth on my computer, the first error I recived was "

  • Updates Windows 7 does not

    On my laptop, windows update will not work. I put in check for updates but let me choose when to download and install. When I put on it to check the updates, it round and round and does nothing. I went to task manage to stop him, but he does not stop

  • BlackBerry App World my apps wrong registration

    I had a BB Torch9800 and upgraded to the Z10 - all fine. However, when I go to world of BB and select My World, it shows the TWO apps I * HAD * installed on the torch and applications that I installed in the Z10.  I want to remove them from the list

  • Backup of ACS v4.0

    Hello I use acs v4.0 and I plan to backup, my problem is that the scheduled backup runs for 3 weeks and then it stops, after that, I have to redo manually after automatic backup starts I have not any problem hard drive space - any body can help me