How to perform the procedure with parameters of type collection
HelloI have the setting as the procedure
PROCEDURE addGroup (
Id IN NUMBER,
sId IN NUMBER,
gIds IN NUMBERLIST)
CREATE OR REPLACE TYPE NUMBERLIST AS TABLE NUMBER;/
could you help me by asking this type as a parameter the procedure...
Thank you
This is the type:
SQL> create or replace type NUMBERLIST is table of number;
2 /
Type created.
This is the procedure:
SQL> create or replace PROCEDURE addGroup (
2 Id IN NUMBER,
3 sId IN NUMBER,
4 gIds IN NUMBERLIST)
5 is
6 begin
7 null;
8 end;
9 /
Procedure created.
And you call it this way:
SQL> declare
2 n numberlist := numberlist(1,2,3,4);
3 begin
4 addGroup(1,2,n);
5 end;
6 /
PL/SQL procedure successfully completed.
Max
[My Italian blog Oracle | http://oracleitalia.wordpress.com/2010/01/23/la-forza-del-foglio-di-calcolo-in-una-query-la-clausola-model/]
Tags: Database
Similar Questions
-
How to perform the procedure packed (with some param) in TOAD for Oracle
Hello.
Could you help me
How to run the packaged procedure with parameters in TOAD to Oralce...
Thank you...Use anonymous PL/SQL block to run it.
For example.
DECLARE
; BEGIN . ( ); END; -
How to perform the procedure of the schema A b schema?
Hello...
I have a doubt... Please specify it.
There are 2 tables and procedure on the tables in A schema.
How to perform this procedure in the diagram B?
I have to give privileges?
Thank you
SAIHello
You must grant execute on the package in plan a plan b. You then Norman to either create a synonym in plan B or the fully qualified name of the call, for example
exec schemea.my_package;
-
How to run a procedure with parameters in pl/sql collections?
I created a procedure with parameter from the collection. Can somone help me how to run a procedure in passing the parameters in the collection.
Package and how to create is successful. But I get the error message when executing the procedure.
ORA-06550: line 3, column 19:
PLS-00222: no function with name 'T_TAB' does exist in this scope
I gave the example of code here. Can someone please help me solve this problem.
-Spec package
create or replace package pkg_dist is
TABLE index IS THE NUMBER of t_tab_num TYPE of PLS_INTEGER;
procedure prc_test (a t_tab_num IN,
b IN t_tab_num,
c IN OUT t_tab_num);
end pkg_dist;
-Package body
create or replace package body is pkg_dist
procedure prc_test (a t_tab_num IN,
b IN t_tab_num,
c IN OUT t_tab_num) is
Start
IF (a (16) = 0) then
(16) c: = 0;
c (17): = 0;
c (18): = 0;
end if;
c (15): = (14)-(15)-a (16);
(16) c: = b (16) /b (17);
c (17): = 50;
(18) c: = a (16) * 2;
end prc_test;
end pkg_dist;
-executeing procedure
declare
TABLE index IS THE NUMBER of t_tab TYPE of PLS_INTEGER;
x t_tab: = t_tab (1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16);
y t_tab: = t_tab (0,10,15,20,25,30,35,40,45,50,60,75,100,125,150,200,250,500);
z t_tab;
BEGIN
pkg_dist.prc_test (x, y, z);
dbms_output.put_line (z (18));
END;
Error:
--------------------------------------------------------------------------------
ORA-06550: line 3, column 19:
PLS-00222: no function with name 'T_TAB' does exist in this scopeMy suggestion would be:
CREATE OR REPLACE PACKAGE pkg_dist IS PROCEDURE prc_test (a IN SYS.odcinumberlist, b IN SYS.odcinumberlist, c IN OUT SYS.odcinumberlist); END pkg_dist; CREATE OR REPLACE PACKAGE BODY pkg_dist IS PROCEDURE prc_test (a IN SYS.odcinumberlist, b IN SYS.odcinumberlist, c IN OUT SYS.odcinumberlist) IS BEGIN IF (a (16) = 0) THEN c (16) := 0; c (17) := 0; c (18) := 0; END IF; c (15) := a (14) + a (15) + a (16); c (16) := b (16) / b (17); c (17) := 50; c (18) := a (16) * 2; END prc_test; END pkg_dist; / DECLARE x SYS.odcinumberlist; y SYS.odcinumberlist; z SYS.odcinumberlist; BEGIN x := sys.odcinumberlist (1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16); y := sys.odcinumberlist (0,10,15,20,25,30,35,40,45,50,60,75,100,125,150,200,250,500); z := sys.odcinumberlist (0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0); pkg_dist.prc_test (x, y, z); DBMS_OUTPUT.put_line (z (18)); END; /
See you soon,.
Manik. -
How to perform the procedure in the SQL worksheet?
Hi, anyone knows, how I can execute procedure here?
I try to EXEC sec_roles, EXEC security_admin.sec_roles, EXECUTE - there's a SQL statement error. When I use the CALL - there is no such procedure (I have execute privileges).
Although in SQLPlus EXEC works, but there are problems with the standard SQL commands (each of them '2' returns any content is).
Any ideas?
Concerning
KrzysztofEXEC procedure (parameters) is a plu sql (and some others) shortcut for
BEGIN procedure(parameters); END;
So try that and then pressing / on anything in the sql worksheet that makes a statement in execution.
Note that if your procedure has defined parameters as OUT or IN OUT, you need to provide a variable to accept the returned values.
John
-
Hello
create or replace type PPT_TYPE
AS
object
(
PPT_SYMB_CODE VARCHAR2 (10 BYTE),
PPT_BATE_CODE VARCHAR2 (1 BYTE),
DATE OF PPT_ASSESS_DATE,
PPT_PRICE NUMBER (18.6).
PPT_CORRECTED VARCHAR2 (1 BYTE),
PPT_MODIFIED_BY VARCHAR2 (30 BYTE),
DATE OF PPT_MODIFIED_DATE);
create or replace type PPT_TABLE_TYPE as the PPT_TYPE table;
create or replace PROCEDURE proc_ins_test (P_PPT_TAB IN PPT_TABLE_TYPE)
as
.
.
.
.
.
end proc_ins_test;
How to run the above procedure?
Kind regards
Fame
Ago
Got it, thanks for all.
DECLARE
P_PPT_TAB DDM. PPT_TABLE_TYPE;
BEGIN
P_PPT_TAB: is PPT_TABLE_TYPE (PPT_TYPE('ENCOC34','u','29-JAN-15','60100','N','MDD','24-FEB-15'));.
() proc_ins_test
P_PPT_TAB-ONLINE P_PPT_TAB
);
END;
-
Satellite P100-188: how to perform the procedure for recovery of the product?
Hello
I just had a bit of trouble to install a piece of software that, in the end I could settle with a system restore. This process was worried at the time that I could not get the software uninstalled properly (I had to download a program from the machine to uninstall!)
At one point, I considered the restoration of my laptop Satellite P100-188 with the product recovery disc, the thing is I never did this before and I was wondering if someone could tell me the best sequence for later use.
I have a standard Windows Media Center Edition OS, a recovery disk of the product, a disk Express Media Player and a CD of Drivers and tools that I created when I got the laptop.
I have a feeling telling to restore Express Media Player before Windows, is does that mean that I have to insert this disc, install Express Media Player, then insert recovery disk product to install Windows?
The Express Media Player disc formats the drive? It's not clear to me and I don't want to run into problems when I finally don't have to reinstall my operating system.
I searched this forum to see if this information was already posted and could not find all the relevant information, all I can find are problems with the help of recovery and lack of discs discs.
If it has been posted before could you provide me a link and I'm sorry again calls for data.
Hello Gary
If you want to have own OS preinstalled, the best solution is to use supplied recovery media. If the Express media player works well the leave it as it is and use the recovery DVDs only for clean operating system installation. All that s!
Tools and Utilities CD can be used if you need to reinstall Toshiba designed tools or if you want to install your own operating system by using the facilities of Microsoft CD. If you have any other questions please post again.
-
How to write the query with parameters below and is null
Hi, I need to recover the data if the parameter is passed on the ground, else retrieve all records where the field is nullExample of
CREATE TABLE DEPT
(DEPTNO NUMBER (2),)
DNAME VARCHAR2 (14).
LOC VARCHAR2 (13));INSERT INTO DEPT VALUES (10, 'ACCOUNTING', 'NEW YORK');
INSERT INTO VALUES DEPT (20, 'SEARCH', 'DALLAS');
insert into dept values (30, 'SALES', 'CHICAGO');
INSERT INTO VALUES DEPT (40, 'OPERATIONS', 'BOSTON');ALTER table dept add (object_id number);
insert into dept values (50, 'OPERATIONS', 'BOSTON', 1);
insert into dept values (60, 'OPERATIONS', 'BOSTON', 1);
INSERT INTO VALUES DEPT (70, 'OPERATIONS', 'BOSTON', 2);Select * from Department where object_id =: p_object_id
If I pass the object_id 1, it shloud retrieve the values of dept with object_id 1, but if I don't pass the object_id, it must retrieve all records where object_id is null
IF 1 is passed as the id of the object, he must recover, 50, 60, if 1 is not passed as object_id it should 10,20,30,40 retive
It works fine for me separately as,.
Select * from Department where object_id =: p_object_id - 1
Select * from Department where the object_id is null;
Is it possible to do in a single query.
Thank you
SELECT * FROM dept WHERE object_id = :p_object_id OR (object_id is null and :p_object_id is null)
is an approach. It's a little talkative, but the meaning is clear. If you can identify a value that would never appear in the data (for example-1)
WHERE nvl( object_id, -1 ) = nvl(p_object_id, -1 );
Justin
-
How to run the script with parameters such as alarm action .ps1
Hello
I know not how to configure alarms, I know that I can point to monitor cluster for changes (via the GUI), but... I have different groups and I would like to set an alarm by vCenter which monitors cluster for changes. Let's call it "RefreshCapacityInfoOnExternalDB".
So, lets just say. I would like to run my script whenever a virtual computer is added, Reconfigured or ESX host are removed, added in a Cluster. The alarm would launch the .ps1 script written in turn the ability to update external db cluster info.
Shortly said: ability to cluster values are changed
What I need is this: run the script-> CapacityInfoRefresher.ps1 < Cluster_name_where_ReconfigEventsTookPlace >
I guess that, first I need an environment variable (if it exists) that can be used as a parameter for the < Cluster_name_where_ReconfigEventsTookPlace > placeholder script. Right?
Chapter 16 of the book of LucD & Friends "PowerCli reference" mentions some environment vars but I'm stuck. Anyone using these options?
THX
A.S.
You can set your alarm on the node above in your vCenter tree, this way it will be active for all collections in the vCenter.
These alarm environment variables are automatically available for your alarm script when it is triggered.
These environment variables, you will be able to determine to which cluster the alarm was pulled.
So I don't think that you need to pass this information as a parameter to the script.
Perrhaps you could share what exactly alarm you want to set and what looks like the script which should trigger alarm.
And Yes, I use these environment variables in scripts of alarm
-
How to call the procedure type table
Hi I have the below requirement
Created in the sub table type
CREATE or REPLACE the TYPE char_type IS the TABLE OF VARCHAR2 (4000);
create or replace procedure test_proc_type (p_type char_type) is
Start
I'm looping 1.p_type.count
dbms_output.put_line (p_type (i));
end loop;
end;
How to call the procedure with parameter as a type!
SQL> create or replace type char_type as table of varchar2(4000) 2 / Type created. SQL> create or replace procedure test_proc_type (p_type char_type) 2 is 3 begin 4 for i in 1..p_type.count loop 5 dbms_output.put_line (p_type(i) ) ; 6 end loop; 7 end; 8 / Procedure created. SQL> set serveroutput on SQL> SQL> exec test_proc_type(char_type('A','B','C','D','E')) A B C D E PL/SQL procedure successfully completed. SQL>
-
Calling stored procedures with parameters with the database connectivity Toolkit
Hi all
I'm new to the forum and struggling to find a solution to a particular problem I have in this respect, using the LabVIEW Database Connectivity Toolkit on a project, I am currently working on my work. I have a database in which I tables and stored procedures with parameters. Some of these stored procedures have input, output and return parameters.
I tried to follow this example, but to no avail: http://digital.ni.com/public.nsf/allkb/07FD130746083E0686257300006326C4?OpenDocument
Such a stored procedure I am working on the implementation is named "dbo.getAllowablePNs", running "SELECT * from DeviceType" (DeviceType is the table). In this case, it requires no input parameter, it has an output parameter that generates the table [cluster] and has a return parameter that returns an integer value (status code for execution) to show if an error occurred. The DeviceType table has 3 columns; ID (PK, int not null), PN (nvarchar ((15), null) and NumMACAddresses (int, null).) I have surpassed many examples and I talk to the support OR try to implement this and similar procedures stored in LabVIEW but have not been successful. I am able to connect to the database with the VI of open connection without error, but spin in some confusion as a result of this step. I then try to use the VI of parameter query create to call the stored procedure and set the parameters. I guess I would then use the Set parameter value for each parameter that is connected to the entry of parameters on the previous query with parameters VI VI? I am also having some confusion during and after these steps as well. I would greatly appreciate advice or suggestions that anyone could have in this situation because I am not a SQL expert. Also, I would be happy to provide more information that might be useful.
Kind regards
Jon
Here's what I use to do this. I think I had to change him create parameterized query VI for him to work. There is a post on the forum about this somewhere.
-
How the parameter of the procedure with the default table type?
Hello!
How the parameter of the procedure with the default table type?
For example:type varchar2lType is table of varchar2(50) index by binary_integer;
Published by: bullbil on 16.01.2012 06:35create or replace procedure test1 ( s1 varchar2(50) sa2 Varchar2Type ) as begin dbms_output.put_line('yyxxyyy!'); end; /
If he should really be an associative array for some reason any (can't think why, but just for fun...) you could declare a dummy array in the packet header and specify as the default:
create or replace package wr_test as type varchar2ltype is table of varchar2(50) index by pls_integer; g_dflt_varchar2l_tab varchar2ltype; procedure testit ( p_testarray varchar2ltype default g_dflt_varchar2l_tab ); end wr_test; create or replace package body wr_test as procedure testit ( p_testarray varchar2ltype default g_dflt_varchar2l_tab ) is begin dbms_output.put_line('p_testarray contains ' || p_testarray.count || ' elements'); end testit; end wr_test;
It is a bit of a hack, because it relies on a global variable that is exposed. A more orderly approach would overload the procedure so that a version does not have the table and another argument:
create or replace package wr_test as type varchar2ltype is table of varchar2(50) index by pls_integer; procedure testit; procedure testit ( p_testarray varchar2ltype ); end wr_test; create or replace package body wr_test as procedure testit is v_default_array varchar2ltype; begin testit(v_default_array); end testit; procedure testit ( p_testarray varchar2ltype ) is begin dbms_output.put_line('p_testarray contains ' || p_testarray.count || ' elements'); end testit; end wr_test;
-
How to call a method of the AM with parameters of Bean managed?
Hello world
I have a situation where I need to call the Managed bean (setDefaultSubInv) AM, under value changes Listner method. Here's what I do, I added the AM method on page links, and then at the bean call it
Class [] paramTypes = {};
Object [] params = {};
invokeEL ("#{bindings.setDefaultSubInv.execute}", paramTypes, params);
It works and be able to call this method, if there are no parameters. Say that I pass a parameter to setDefaultSubInv(String a) method AM, I tried to call it bean but raise an error
The string available = 'test ';
Class [] paramTypes = {String.class};
Object [] params = {DISP};
invokeEL ("#{bindings.setDefaultSubInv.execute}", paramTypes, params);
I'm not sure this is the right way to call the method with parameters. Can anyone tell how to call a method of the AM with bean to manage settings
Thank you
San.Just do the following
1. your method in the Client Interface.
2 - Add to Page Def.
3 - Customize your Script like below one to reach your goal.BindingContainer links = getBindings();
OperationBinding operationBinding = bindings.getOperationBinding("GetUserRoles");
operationBinding.getParamsMap () .put ("username", "oracle");
operationBinding.getParamsMap () .put ("role", "F1211");
operationBinding.getParamsMap () .put ("Connection", "JDBC");
Object result = operationBinding.execute ();
If (! operationBinding.getErrors () .isEmpty ()) {}
Returns a null value.
}
Returns a null value.
}I hope it helps you
Thank you -
turn off text while performing the procedure
Hello
Oracle9i
How to disable the text while performing the procedure below?
15 old: Procedure_name(&var1);
15 new: Procedure_name(&var2);
ConcerningUse SET CHECK TURNED off.
It won't make any difference in the results you get, but it's just for you to see which variable is getting replaced by what value. -
How to play the song with .wma extension
How to play the song with .wma extension
If it does not DRM, use VLC. If so, no Mac OS X software can play or convert.
(142864)
Maybe you are looking for
-
I have had my iPad 2 Air since Christmas and still have su text my husband on his Sony z1 of the iPad. It has recently upgraded to a z3 and now I can no longer send text messages him. Why is this? It is impossible because of compatibility issues that
-
Why no indicator of security for America acette on don't line Bankin' Security page
Why is there no security on the web page (for example the lock) indicator for the Bank of America Online banking This has happened Each time Firefox opened Is Bank of America banking page opening
-
Wireless driver HP Notebook 250 G3
Dear Sir I have a problem with my wireless. My button is lit, but Wireless does not work. My laptop is: HP 250 G3 laptop. These are details of drivers: PCI\VEN_1814 & DEV_3290 & SUBSYS_18EC103C & REV_00 PCI\VEN_1814 & DEV_3290 & SUBSYS_18EC103C PCI\V
-
WINDOWS CANNOT UPDATE AUTOMATICALLY!
Error (s) found code: 80070003 windows update encountered an unknown error
-
original title: e-mail problems Recently I can't send an email to an address that has already worked well... There is no error message... It appears in the sent items, but never happens... Any ideas?