How to create table from ref cursor
I have a proc that returns a ref cursor, whats the simplest way to create a table based on the return of the ref cursor?
declare
type rc is ref cursor;
p_data rc;
begin
call_my_proc(p_data);
:result := p_data; -- If I run this in TOAD I can see the data here but I want to create a table based on it rather than outputting it)
end;
thanks.
edit: sorry. typed this wrong first time, should be right now
961469 wrote:
I have a proc that returns a ref cursor, whats the simplest way to create a table based on the return of the ref cursor?Not to do it...
A cursor is not a result set. A cursor is not a result set. Worth repeating several times as this is a common misconception
A cursor is essentially a program. Executable code that was compiled from a SQL source code program.
A SELECT cursor is "read" program. Each fetch instruction runs this program (from its current "paused state"), and outputs data.
An INSERT cursor is a "write" program. You pass data to it (process called binding, via bind variables). You then execute the program. It writes the data it received (can be bulk data via a bulk bind) to table.
Now your question is: How do I write the output of a cursor program back to the database?
The answer is that a "write" cursor program is needed. Your code needs to execute (fetch output from) the ref (read/select) cursor. Then bind that data to the "write" cursor and execute it.
In other words, you have a read cursor and a write cursor, and you need to pass data from one to the other.
HOWEVER.. This is slow. This does not scale. This is also known as slow-by-slow row by row processing.
The correct approach is to create a single program. One that reads the data, and then writes the data. No to send data via a detour through your code between the read part and write part.
The cursor to create is an INSERT..SELECT cursor. This can do fast direct path inserts. This can be executed in parallel - i.e. the database executing several copies of this read-and-write program at the same time.
Similar Messages
-
How to create table from method
Hello -
Could anyone please tell me how can I create af:table with more than one column from an AppsModule method.
When I have a 1d array return eg:
public String[] createTable(){
String[] str = new String[1];
return str;
I can drop it as a table and one column gets created. But how can I get mutiple columns in a table. I want to write a method, which when dropped on jsp page create table with multiple columns.
I am using ADF 11g.
Please suggest.
Regards -
RohitHi,
for this you use an array or array list of objects. The object represent the row content, e.g. Person. The Person class then has setter/getter for each of the properties that you want to show in a column
Frank -
How to create table from another in pl/sql
Hi I need to create a table from another in pl/sql
How can I do thisThe proper way to do this, is not to do it in PL/SQL. But do it in SQL, something like:
create table tbl
as
select *
from other_tbl;Doing it in PL/SQL is really slow compared to SQL.
Yes, if you really want to create a table using PL/SQL then you will need to use DBMS_SQL or EXECUTE IMMEDIATE (Native Dynamic SQL) to do this. -
How to create table from one to another schema?
Hi,
There is two schema A and B. schema A want to create table on Schema. which privilege we need to provide? how to create?
thanks in advance
Thanks,user2017273 wrote:
Hi,
There is two schema A and B. schema A want to create table on Schema. which privilege we need to provide? how to create?
thanks in advance
Thanks,When you give CREATE ANY TABLE TO A then user A will create table on any schema.But you can create stored PROCEDURE on schema B for creating table and give GRANT EXECUTE <PROC NAME> to A. -
How to create table from .ini file
Hi,
The file *.ini generates a Multicolumn Listbox where is indicated a number (variable) of tables with them characteristics (row and column) as in the picture below.
I need to find the way to create automatically, on word file, the tables as indicated in the *.ini file. Do you think that it could be possible? That you know, exist a Macro to do this?
Best regards
Attachments:
Multicolunms .png 8 KBAs Taki said above, to do this you need to use the Report Generation Toolkit. This will allow you to generate tables in a word document. Look for the examples in the LabVIEW Help for a rough idea of how to use the toolkit and if you have any specific questions after that then feel free to post them here.
Certified LabVIEW Architect, Certified TestStand Developer
NI Days (and A&DF): 2010, 2011, 2013, 2014
NI Week: 2012, 2014
Knowledgeable in all things Giant Tetris and WebSockets -
How to type cast PL/SQL table to REF cursor?
any one knows how to CAST PL/SQl table to Ref cursor?
eg
procedure some_name(r_out out sys_refcurosr)
IS
type t is table of tab%ROWTYPE;
my_type t;
begin
select * bulk collect into my_type from tab;
r_out := my_type; -- need help here..
end;
it's 10gref cursor is pointer to result set. You can not cast to PL/SQL table.
1 create or replace procedure some_name(r_out out sys_refcursor)
2 IS
3 begin
4 OPEN r_out for select * from emp;
5* end;
SQL> /
Procedure created.
SQL> var mycursor refcursor;
SQL> exec some_name(:mycursor);
PL/SQL procedure successfully completed.
SQL> set linesize 2000
SQL> print :mycursor;
EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO
7369 SMITH CLERK 7902 12/17/80 00:00:00 800 20
7499 ALLEN SALESMAN 7698 02/20/81 00:00:00 1600 300 30
7521 WARD SALESMAN 7698 02/22/81 00:00:00 1250 500 30
7566 JONES MANAGER 7839 04/02/81 00:00:00 2975 20
7654 MARTIN SALESMAN 7698 09/28/81 00:00:00 1250 1400 30
7698 BLAKE MANAGER 7839 05/01/81 00:00:00 2850 30
7782 CLARK MANAGER 7839 06/09/81 00:00:00 2450 10
7788 SCOTT ANALYST 7566 04/19/87 00:00:00 3000 20
7839 KING PRESIDENT 11/17/81 00:00:00 5000 10
7844 TURNER SALESMAN 7698 09/08/81 00:00:00 1500 0 30
7876 ADAMS CLERK 7788 05/23/87 00:00:00 1100 20
EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO
7900 JAMES CLERK 7698 12/03/81 00:00:00 950 30
7902 FORD ANALYST 7566 12/03/81 00:00:00 3000 20
7934 MILLER CLERK 7782 01/23/82 00:00:00 1300 10
14 rows selected. -
Wanted to fetch data from ref cursor to nested pl/sql table getting an erro
create or replace type "DEPT12" as object(dno number(2),dname varchar2(30),loc varchar2(50));
create or replace type dept_tab as table of "DEPT12"
create or replace type "LOC12" as object(locno number,loc_name varchar2(100))
create or replace type loc_tab as table of "LOC12"
create or replace type dept_loc_rec1 as object (dept_dt dept_tab,eno number,loc_dt loc_tab);
create type dept_loc_tb as table of dept_loc_rec1
create table dept_loc_tb_bk1(dept_dt dept_tab,eno number,loc_dt loc_tab)
NESTED TABLE dept_dt
STORE AS dept_tab12,
NESTED TABLE loc_dt
STORE AS loc_tab12
insert into dept_loc_tb_bk1 values(dept_tab(dept12(3,'ABD','LOC')
,dept12(4,'ABD','LOC')
,dept12(5,'ABD','LOC')),3,loc_tab(loc12(21,'AAB'),
loc12(22,'AAB'),
loc12(23,'AAB')));
when I am trying to fetch data from ref cursor to pl/sql table which i am getting an error ora-06504: pl/sql : Return types of result set variables or query do not match.
I have created a nested table of same as the nested pl/sql object table dept_loc_tb and i have declared the lv_dept_loc_tb of same dept_loc_tb but getting an above error when trying to fetch into that variable.
Please any one who can solve my problem.
declare
type cr is ref cursor;
cr_obj cr;
lv_dept_loc_tb dept_loc_tb;
begin
open cr_obj for select dept_dt,eno,loc_dt from dept_loc_tb_bk1;
fetch cr_obj bulk collect into lv_dept_loc_tb;
close cr_obj;
end;Your query selects 3 separate columns therefore requires 3 collections of corresponding types. You want to treat those 3 columns as an object of DEPT_LOC_REC1 type:
SQL> declare
2 type cr is ref cursor;
3 cr_obj cr;
4
5 lv_dept_loc_tb dept_loc_tb;
6
7 begin
8 open cr_obj for select dept_dt,eno,loc_dt from dept_loc_tb_bk1;
9 fetch cr_obj bulk collect into lv_dept_loc_tb;
10 close cr_obj;
11 end;
12 /
declare
ERROR at line 1:
ORA-06504: PL/SQL: Return types of Result Set variables or query do not match
ORA-06512: at line 9
SQL> declare
2 type cr is ref cursor;
3 cr_obj cr;
4
5 lv_dept_loc_tb dept_loc_tb;
6
7 begin
8 open cr_obj for select DEPT_LOC_REC1(dept_dt,eno,loc_dt) from dept_loc_tb_bk1;
9 fetch cr_obj bulk collect into lv_dept_loc_tb;
10 close cr_obj;
11 end;
12 /
PL/SQL procedure successfully completed.
SQL> SY.
P.S. Discover sys_refcursor. -
How to create data_block from procedure ?
hi all
can anyone to help me :
how to create data_block from procedure ?
i want to join 2 or 3 table and use order by
then show some field in my form
i can not use view because order by can not use in view
please send sample code for this procedure
thanks.1) >i can not use view because order by can not use in view
SQL>create or replace view V_test as
2 select * from (
3 select 1 id from dual union
4 select 2 id from dual union
5 select 3 id from dual union
6 select 4 id from dual union
7 select 5 id from dual union
8 select 6 id from dual ) t
9 order by t.id
10 /
View created.
SQL>select * from v_test;
ID
1
2
3
4
5
6
6 rows selected.2). >how to create data_block from procedure?
You must create procedure and use ref cursor. -
How to create table control without wizard....???
Hello experts !!
Plz tell me how to create table control without wizard.
for sflight table.
Scenario 1
I have one screen like 1000.
There i have taken carrid, connid, fldate as criteria.
Now i want to display Planetype, Price, Seatsmax in the table control.
Scenario 2
i have two screens 1001, 1002.
in the screen 1001 i have taken carrid, connid, fldate as criteria and there is a Button.
when i will click the button it will show the price, planetype and seatsmax in the table control in the next screen, i.e 1002
plz help me out...
and how to save new record in the dictionary table from that table control....Hi
see the sample programs and design accordingly
syntax:
CONTROLS .
if you only want to determine the row of the table control. SY´-SUBRC allows you to check if the cursor is placed in a row of a table control.
u need to comment the performs of table control fields and write ur own perform statements. And u have to declare the table control fields as separate internal tables.
Go through this urls.
www.****************
www.sap-img.com
Check the below links.
just refer to the link below
http://www.sapmaterial.com/tablecontrol_sap.html
step by step procedure with screen shots
http://www.planetsap.com/howdo_a.htm
http://help.sap.com/saphelp_nw2004s/helpdata/en/9f/dbac5135c111d1829f0000e829fbfe/content.htm
http://sap.niraj.tripod.com/id25.html
Also you can see the below examples...
Go to se38 and give demodynpro and press F4.
YOu will get a list of demo module pool programs.
One more T-Code is ABAPDOCU.
YOu can find more examples there.
See the prgrams:
DEMO_DYNPRO_TABLE_CONTROL_1 Table Control with LOOP Statement
DEMO_DYNPRO_TABLE_CONTROL_2 Table Control with LOOP AT ITAB
http://www.geocities.com/ZSAPcHAT
http://www.allsaplinks.com/files/using_table_in_screen.pdf
Regards
Anji -
How to pass PL/SQL ref cursor to Access DB
We have a package in Oracle with a stored procedure in it. This procedure has a ref cursor that returns a value from table in Oracle.
How can we pass this ref cursor to our tables in Access?The same way you pass any other parameter to Access. I don't know enough enough about Access to answer the specific question, but you'll find oodles of samples for working with ref cursors and ODBC/ASP/OCI/MFC over at Tom Kyte's place.
Cheers, APC -
How to move table from one tablespace to other tablespace?
how to move table from one tablespace to other tablespace?
887274 wrote:
how to move table from one tablespace to other tablespace?
alter table <table_name> move tablespace <new_tablespace_name>;
Rebuild the indexes; alter index <index_name> rebuild <new_tablespace_name> online;Example;:
SQL> create table ttt( ID NUMBER PRimary key);
Table created.
SQL> insert into ttt values (1);
1 row created.
SQL> commit;
Commit complete.
SQL> select index_name, status from dba_indexes where table_name='TTT';
INDEX_NAME STATUS
SYS_C0010863 VALID
SQL> alter table ttt move tablespace users;
Table altered.
SQL> select index_name, status from dba_indexes where table_name='TTT';
INDEX_NAME STATUS
SYS_C0010863 UNUSABLE
SQL> alter index SYS_C0010863 rebuild tablespace users online;
Index altered.
SQL> select index_name, status from dba_indexes where table_name='TTT';
INDEX_NAME STATUS
SYS_C0010863 VALID
SQL> -
How to create table in bisystem
hi,
how to create table in bi system.
My requirement is such like that i want to store data which is used in the routine.
i want to maintain the data dynamically so that i want to create the table.Hi.........
Same as ABAP only...........using SE11........
Steps for creating table:.
There are two approach in creating a table.
1. Bottom-up approach
2. Top-down approach.
Both are valid and you can choose which approach is suitable for you. I always use the bottom-up approach. Here are the steps to create the tables with this approach.
1. SE11 will take you to the DDIC and enter the name of the new table to be created. Let us say Zname. Click create.
2. Enter the short discription of the table and enter the field of the table. If it is primary key and you have to check the box.
3. Enter the data element and double click it, you will be asked to save and will take you to data element discription page. Enter the short discription of the data element and enter the information of domain like the length of field and type of field.
4. If you wanted to use the existing domain then its fine, or else, you have to create one. Enter the domain name in the data element page and double click it. Page will ask to save and jump to domain creation page.
5. In the domain page, you have to save the information which you have already given in the data elements page and check it. Before going to data element page, you have to activate the domain.
6. Go to data element page and save, check and activate.
7. Go to main table page and save, check, and activate.
8. Also, you have to save the technical settings of the table.
The table is now ready for operation. You can use it in your program or you can use it to enter information.
Check table: It is the table which will have all the information about the Foreign keys which are the primary keys in the check table.
It can be created by creating the foreign key from the main table. Click foreign key in the main table and it will take you to a page which will ask for table name and field to which foreign key relation has to be associated. Enter the information and you can create the check table automatically.
SM30 is used for maintenance of the table, that is to realease the errors occured during the creation of the table.
Hope this helps......
Regards,
Debjani.......... -
How to create table in interactive form via Java Web Dynpro
Hi,
How to create table in interactive form via Java Web Dynpro ?
Any online tutorial / example ?
Thank you.
Regards,
EricHi Eric,
Just choose the UI element Table from Form Library and drag and drop it on the form. now choose the no. of rows and columns and other settings you want about table from the wizard initiated through this process. This all is what you have to do to create the table. Now to bind it to the fields of the data source bind the individual colums to individual attributes of the node in the datasource.
Hope it will solve your query.
Regards,
Vaibhav Tiwari. -
How to create tables in Database when webdynpro project is deployed
Hi
I Created a project.in that i created stuctures using simpletypes.Based on structure i created the Context,then created screens.Now how to create tables in database using this structures .Because i want to store the values in the database.Please help.this is very urgent.i will give good points
thanks
prasadHi Prasad,
You can write normal JDBC code in your controller.
Check this Web Dynpro Java
You can use the tool for generating the classes from your DB.Check this too
https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/dfad6017-0301-0010-bdb8-a8b7d2006f36
Best Regards, Anilkumar -
How to create table and digital signature ?
Hello,
I would like to ask two questions regarding SAP interactive forms by adobe.
1st question:
How to create table in interactive form?
Table that i can add rows and column and will show it in the form.
Example the rows and columns that i want:
<u><b>ID:</b></u> <b><u>Name: </u> </b> <u><b>DOB:</b></u>
1 Jack 01/02/80
2 Ivy 10/12/82
2nd question:
How to create digital signature ?
I'm creating a adobe forms which need employee to sign on the form. I use signature field at my form. However, i don't know how to create a new signature and insert in the signature field.
Can any one provide the answer with step by step guide?
Thanks a lotHi Pradeepa,
you said you have your digital signature in
BMP format? That means Bitmap and would mean you are actually talking about a picture! THIS IS NOT A DIGITAL SIGNATURE!
A digital signature is a cryptographic key (aka public key cryptography) that is used to digitally sign a document, or at least a hash value derived from the document. Digitally signing means, applying the key in a well defined way (this is the algorithm used) to the document or hash value. You do this with your private key and the receiver of the document can then use your public key (which you can distribute in any way you want, even unsecure) to unencrypt the hash value. If this succeeds the receiver knows that the document was signed by you.
This is because both keys are mathematically related in such a way, that what one key encrypted can only be decrypted by the corresponding other key and by no other key. You even can´t decrypt a document with the same key it was encrypted with, this is the difference to symmetric encryption - please have a look at help.sap.com and search for digital signatures.
The named formats (afs, pfx and p12) are ways of coding the key, together with information about your person, such as email address and information about validity of the key into a
certificate. This type of certificate is then called a x.509 certificate and is the same you might have seen when connecting to a secure webserver such as the one of your bank website.
Signing a form with such a certificate provides for mathematically and therefore business related proove of a users identity.
In case you are really using a bitmap, this cannot work and would not serve you any good.
Ask yourself this question: I want to make sure that the form was signed by a specific person. How can I make sure that the signing can only be done by the person pretending to have done so?
A bitmap contains a picture, probably of the persons handwritten signature. How can I make sure that this picture was NOT recreated in MS Paint or Photoshop by someone else?
The answer is:
you can't! Therefore this way of prooving identity is useless.
You need to provide your users with digital signatures, put these in the certificate cache of your IE. If a user then clicks on the signing field, the private key is used to digitally sign the form - create a hash value of the form and encrypt it with the private key. After the form is send back to the server or you, you use the corresponding public key to decrypt the hash value and, as said above, if this succeeds, identity of the signer is proven.
THIS IS AN OVERSIMPLIFICATION! You might want to take a look at Adobe Reader Credentials.
Regards,
Christian
Maybe you are looking for
-
No sound in any software.
Good evening. Half a month ago I discovered to my dismay that the laptop no longer was producing any sound. I've troubleshooted this entire week, and I think I'm ready to ask around on the forum. I've tried pretty much everything to my knowledge only
-
Drawing Tools Acting As If Shift Key Being Held Down
Hey guys, Small problem here with Adobe Acrobat Reader 8.0.0. When drawing square, oval, etc., the shapes are coming up as if the Shift Key was being held down. This also happens when trying to draw a box to place a digital signature. Check my keyboa
-
Enhancement for Sales process in FMCG industry
Dear Experts, I have a requirement for Cross Selling at my client. I have seen several posts in SDN but I have not found the exact solution for my requirement. Kindly suggest as per my requirement. The requirement is as follows: My client sells Mater
-
Why can't my Apple TV detect my Mc Book Pro to use the Airplay
Why can't my Apple TV not detect my Mc Book Pro. I recently installed the Mountain Lion OS and wanted to use the Airplay feature.
-
More than one item table in HIERSEQ_LIST_DISPLAY
Hi , Is it possible to have moe than one item table in HIERSEQ_LIST_DISPLAY. if we have more than one item table with different structures then what is the best way to disply them. Thanks and Regards,