HOw to improve insert/update/select for nested table.
Hi All,
I think this is my second thread for nested table.
i just want to know what are the different ways available to improve the insert/update/select operation on Nested table.
Thanks in advance.
By not using a nested table for data storage in the first place...
http://asktom.oracle.com/pls/apex/f?p=100:11:0::::P11_QUESTION_ID:8135488196597
Perhaps Parallel Query/DML might give some relief.
Similar Messages
-
How to improve the updating a sql server table with another table in Oracle
Hi there.
I am trying to do the next updating in SSIS
UPDATE S
SET
S.COLUMN_A = OT.COLUMN_A,
S.COLUMN_B = OT.COLUMN_B
FROM
SQLT1 S INNER JOIN ORACLET1 OT ON
S. COLUMN_C = OT.COLUMN_C
This is what I am doing:
I am taking the Oracle data with the ODBC Source like this.
Select column_A, column_B, column_C
from OracleT1
The thing is, the Oracle table has millions of registers and this updating is taking a lot. But I am not sure if it is maybe because of the design of the update query.
I wonder is if there is another way to design this query or improve the performance of this task.
Thanks a lot.Yes
Use a OLEDB destination instead and save the records to a staging table
Then use a subsequent Execute sql task and do the set based update in it as below
UPDATE t
SET COLUMN_A = s.COLUMN_A,
COLUMN_B = s.COLUMN_B
FROM SQLT1 t
INNER JOIN stagingTable s
ON s.COLUMN_C = t.COLUMN_C
This would be much faster as its set based
Please Mark This As Answer if it solved your issue
Please Vote This As Helpful if it helps to solve your issue
Visakh
My Wiki User Page
My MSDN Page
My Personal Blog
My Facebook Page -
How to restrict the record selection for PLPO table .
Hi,
Am selecting 'plnnr' and 'vornr' from PLPO table . For one Plnnr their are multiple Vornr including 0001 & 9999.
I want to select only those entries which have only Vornr 0001 & 9999.
Ex : 1) Plnnr - 5689
Vornr - 0001,2536,8989,9999
2) Plnnr - 8787
vornr - 0001
3) Plnnr - 5936
vornr - 9999
4) Plnnr - 2345
vornr - 0001,9999
Here for this example i want to select only the entry with Plnnr = 2345 as it only contains 0001 & 9999.
Can any one let me know how to get this in a select query.
Your help is much appreciated.
Thanks in advance.
Ravi Kasnale.Hi
Try with below code
RANGES:r_vornr FOR plpo-vornr.
TYPES:BEGIN OF ty_plpo,
plnnr TYPE plpo-plnnr,
vornr TYPE plpo-vornr,
END OF ty_plpo.
DATA:it_plpo_temp TYPE STANDARD TABLE OF ty_plpo.
DATA:it_plpo TYPE STANDARD TABLE OF ty_plpo.
DATA:it_plpo_temp1 TYPE STANDARD TABLE OF ty_plpo.
DATA:wa_plpo_temp1 TYPE ty_plpo.
DATA:v_line TYPE sy-tabix.
START-OF-SELECTION.
r_vornr-sign = 'I'.
r_vornr-option = 'EQ'.
r_vornr-low = '0000'.
CLEAR:r_vornr-high.
APPEND r_vornr.
r_vornr-sign = 'I'.
r_vornr-option = 'EQ'.
r_vornr-low = '9999'.
CLEAR:r_vornr-high.
APPEND r_vornr.
SELECT plnnr vornr FROM plpo INTO TABLE it_plpo_temp1 WHERE vornr IN r_vornr.
CLEAR:it_plpo[].
LOOP AT it_plpo_temp1 INTO wa_plpo_temp1.
CLEAR:it_plpo_temp[].
it_plpo_temp[] = it_plpo_temp1[].
DELETE it_plpo_temp WHERE plnnr <> wa_plpo_temp1-plnnr.
DESCRIBE TABLE it_plpo_temp LINES v_line.
IF v_line EQ '2'.
APPEND LINES OF it_plpo_temp TO it_plpo.
ENDIF.
ENDLOOP.
SORT it_plpo BY plnnr.
DELETE ADJACENT DUPLICATES FROM it_plpo COMPARING plnnr.
Regards
Srilaxmi -
How can I reduce the selection for the characteristics value in a BW query
Good morning,
I need to find out how I can reduce the selection for the characteristics values in a BW query.
In a BW query I have a characteristic "Due month".
The characteristic values shown in the query are from 01.2001->03.2007. I would like to reduce it to the last 2 years,in the query view, without deleting the data for the other years in the cube.
Do you know how this can be done?
Thank you in advance for your feedback.
Kind regards,
Linda Verding
Staff Consultant - CSChi,
First thing you have to do is check the report how the data is being restricted only to those months.
1) one it can be variable in which the code is written for that to populate for last few years.
or else it must have been hardcoded for these months.
Go into your report and underneath the characteristicsCALMONTH there must be an variable or hardcoding.
You need to change this here in the report.
You dont have to delete anything there.
Regards, Siva -
My nodejs and php component is ready but how will we insert in eloqua for all users?
Hi there,
my nodejs and php component is ready but how will we insert in eloqua for all users?
ThanksHi there,
Please help me. -
As i am fresher Please share the doc of ECMA script using java script in SharePoint 2013 step by step also how we can insert,update,delete records in list using ECMA script.
Thanks and Regards, Rangnath MaliHi,
According to your post, my understanding is that you want to use JavaScript to work with SharePoint list.
To create list items, we can create a ListItemCreationInformation object, set its properties, and pass it as parameter to the addItem(parameters) function
of the List object.
To set list item properties, we can use a column indexer to make an assignment, and call the update() function so that changes will take effect when you callexecuteQueryAsync(succeededCallback,
failedCallback).
And to delete a list item, call the deleteObject() function on the object.
There is an MSDN article about the details steps of this topic, you can have a look at it.
How to: Create, Update, and Delete List Items Using JavaScript
Thanks & Regards,
Jason
Jason Guo
TechNet Community Support -
How BOM and routing is selected for Planned order and Production order?
Hi,
Can any1 plz tell me how BOM and routing is selected for a planned order and production order. ?Hello Mathisuthan,
BOM and Routing selection for the planned order and production order through production version, If u have more than one BOM and more than one Routing then u can maintain this information as Production Version in the system.
Production version you maintained
MM01/MM02 -- MRP4--- Production version
Or you can create Production Versions in Mass also with Transaction Code "C223"
In the case no production version maintained/created for the material, then system by default will pick the first BOM and routing.
I hope this information helpful to you.
Regards
Umesh Mali -
The best way to insert values in a Nested Table
Hi!
I want to insert values from a SQL-query in a Nested Table.What's the best way to do it?
In addition,the only way that I've found is doing a query and when I've got the query result I insert it into the Nested Table.For instance:
FOR cur_row IN (SELECT id,nstreet from example Where id=3) LOOP
--here I'm inserting the values of the query in the nested table.
-- VarNestedTable is a Nested Table of Row_Type.
--Row_Type is an object with two fields:Id,Nstreet
VarNestedTable.extend;
VarNestedTable(Coincidents.Last):= Row_type(cur_row.id,cur_row.nstreet);
END LOOP;How to Use Tables: Creating a Table Model.
very bad example:
class DataObject {
String name, age, numberOfMonkeys;
class DOTableModel extends AbstractTableModel {
final String[] COLUMN_HEADER = { "Name", "Age", Monkeys" };
List dataObjects;
public String getColumnName(int column) {
return COLUMN_HEADER[ column ];
public int getRowCount() {
return dataObjects.size();
public int getColumnCount() {
return COLUMN_HEADER.size();
public Object getValueAt(int row, int column) {
DataObject do = dataObject.get( row );
switch( column ) {
case 0: return do.name;
case 1: return do.age;
case 2: return do.numberOfMonkeys;
} -
Inserting into a doubly nested table through an object view
Can anyone give me an example of an INSTEAD OF trigger that will mediate an INSERT into a doubly nested table of an Object View? Is there syntax that will allow it?
Here's some code to demonstrate. Note that relational tables, not an object table, are used to store object instances:
create or replace type TInnerNestedTable
is table of varchar2(20)
create or replace type TOuterNestedTable
is table of TInnerNestedTable
create or replace type TMyObject
is object
id varchar2(20)
, tab TOuterNestedTable
create
table T_MY_OBJECT
id varchar2(20) not null
, primary key (id)
create
table T_MY_OBJECT_TAB_OUTER
id varchar2(20) not null
, outerIndex integer not null
, primary key (id, outerIndex)
, foreign key (id) references T_MY_OBJECT on delete cascade
create
table T_MY_OBJECT_TAB_INNER
id varchar2(20) not null
, outerIndex integer not null
, innerIndex integer not null
, innerValue varchar2(20)
, primary key (id, outerIndex, innerIndex)
, foreign key (id, outerIndex) references T_MY_OBJECT_TAB_OUTER on delete cascade
create or replace view V_MY_OBJECT
of TMyObject
with object identifier (id)
as
select t.id
, cast(multiset(
select cast(multiset(
select i.innerValue
from T_MY_OBJECT_TAB_INNER i
where i.id = o.id
and i.outerIndex = o.outerIndex
) as TInnerNestedTable)
from T_MY_OBJECT_TAB_OUTER o
where o.id = t.id
) as TOuterNestedTable)
from T_MY_OBJECT t
create or replace trigger TR_II_V_MY_OBJECT
instead of insert on V_MY_OBJECT
for each row
begin
insert
into T_MY_OBJECT
id
values (
:new.id
insert
into T_MY_OBJECT_TAB_OUTER
id
, outerIndex
select :new.id
, rownum
from table(:new.tab) o;
insert
into T_MY_OBJECT_TAB_INNER
id
, outerIndex
, innerIndex
, innerValue
select :new.id
, o.outerIndex
, rownum
, value(i)
from (
select :new.id
, rownum outerIndex
, value(o) innerTab
from table(:new.tab) o
) o
, table(o.innerTab) i;
end;
insert
into V_MY_OBJECT
values (
new TMyObject(
'A'
, TOuterNestedTable(
TInnerNestedTable('A','B','C')
, TInnerNestedTable('AA')
, TInnerNestedTable('AB')
insert
into V_MY_OBJECT
values (
new TMyObject(
'B'
, TOuterNestedTable(
TInnerNestedTable('X','Y','Z')
, TInnerNestedTable('Hello', 'World!')
/Selecting from the view shows the results:
select value(o)
from V_MY_OBJECT o
VALUE(O)(ID, TAB)
TMYOBJECT('A', TOUTERNESTEDTABLE(TINNERNESTEDTABLE('A', 'B', 'C'), TINNERNESTEDTABLE('AA'), TINNERNESTEDTABLE('AB')))
TMYOBJECT('B', TOUTERNESTEDTABLE(TINNERNESTEDTABLE('X', 'Y', 'Z'), TINNERNESTEDTABLE('Hello', 'World!')))
2 rows selected.Hope that helps...
Gerard -
How to find out the link for the tables for sub contract PO
Dear All,
How to find out the link for the tables for sub contract PO, I am looking for the fields Material, Unit, Batch no., quantity.
Please provide the solution for the Table related to ABAP.
Thanks,
V.V.Hi,
Make use of the table EKKO, EKPO...
For subcontract please select the option in EKPO-PSTYP.
Regards
GK. -
Updating model for pivot table in af:iterator
Using Master Detail relationship, i am trying to create multiple forms at runtime. I want to show all the forms at once. Each form has some header fields and a pivot table. Header field is coming from master table and pivot table should be made from child.
I am using af:iterator to iterate over master table rows and show header:
<af:iterator id="i1"
value="#{bindings.MasterTableVO.collectionModel}" var="row"
varStatus="index"> For pivot table, i dragged Child View Object from Data Controls to make pivot table.
<dvt:pivotTable id="pivotTable1"
value="#{bindings.ChildTableVO.pivotTableModel}"
summary="pivot table" sizing="auto"
pivotEnabled="false" drillingEnabled="false"/> Now while iterating, i am not able to get updated model for pivot table. Values from Master table are being updated, but pivot table from child table showing details corresponding to the first row of master table everywhere.
So can you please help me, how to get the updated pivot table model corresponding to the current row in parent iterator ?
I am using JDeveloper 11.1.1.6.0
Thank You.
VSHi Aswini ,
I didnot worked for me. I need to change the usecase a bit..
however you can eaisly display the af:table inside iterator in readonly mode, but when you perform crud operations inline then it gives problems..
Can you explain your usecase.
Regards,
Santosh. -
How to get count of rows for a table?
Hi,
How to get count of rows for a table and secondly, how can i have access to a particular cell in a table?
Regards,
DevashishHi Devashish,
WdContext.node<Your_node_name>().size() will give you the no: of rows.
This should be the node that is bound to the table's datasource property.
WdContext.node<Your_node_name>().get<node_name>ElementAt(index_value); will select the row at that particular index.
You can access an attribute of a particular row as
WdContext.node<Your_node_name>().get<node_name>ElementAt(index_value).get<attribute_name>();
Hope this helps,
Best Regards,
Nibu.
Message was edited by: Nibu Wilson -
How many SECONDARY INDEXES are created for CLUSTER TABLES?
how many SECONDARY INDEXES are created for CLUSTER TABLES?
please explain.There seems to be some kind of misunderstanding here. You cannot create a secondary index on a cluster table. A cluster table does not exist as a separate physical table in the database; it is part of a "physical cluster". In the case of BSEG for instance, the physical cluster is RFBLG. The only fields of the cluster table that also exist as fields of the physical cluster are the leading fields of the primary key. Taking again BSEG as the example, the primary key includes the fields MANDT, BUKRS, BELNR, GJAHR, BUZEI. If you look at the structure of the RFBLG table, you will see that it has primary key fields MANDT, BUKRS, BELNR, GJAHR, PAGENO. The first four fields are those that all cluster tables inside BSEG have in common. The fifth field, PAGENO, is a "technical" field giving the sequence number of the current record in the series of cluster records sharing the same primary key.
All the "functional" fields of the cluster table (for BSEG this is field BUZEI and everything beyond that) exist only inside a raw binary object. The database does not know about these fields, it only sees the raw object (the field VARDATA of the physical cluster). Since the field does not exist in the database, it is impossible to create a secondary index on it. If you try to create a secondary index on a cluster table in transaction SE11, you will therefore rightly get the error "Index maintenance only possible for transparent tables".
Theoretically you could get around this by converting the cluster table to a transparent table. You can do this in the SAP dictionary. However, in practice this is almost never a good solution. The table becomes much larger (clusters are compressed) and you lose the advantage that related records are stored close to each other (the main reason for having cluster tables in the first place). Apart from the performance and disk space hit, converting a big cluster table like BSEG to transparent would take extremely long.
In cases where "indexing" of fields of a cluster table is worthwhile, SAP has constructed "indexing tables" around the cluster. For example, around BSEG there are transparent tables like BSIS, BSAS, etc. Other clusters normally do not have this, but that simply means there is no reason for having it. I have worked with the SAP dictionary for over 12 years and I have never met a single case where it was necessary to convert a cluster to transparent.
If you try to select on specific values of a non-transparent field in a cluster without also specifying selections for the primary key, then the database will have to do a serial read of the whole physical cluster (and the ABAP DB interface will have to decompress every single record to extract the fields). The performance of that is monstrous -- maybe that was the reason of your question. However, the solution then is (in the case of BSEG) to query via one of the index tables (where you are free to create secondary indexes since those tables are transparent). -
Insert / update data to a table through DBLINK (oracle)
I try to insert / update a table from one instance of oracle database to another one through oracle dblink, get following error:
java.sql.SQLException: ORA-01008: not all variables bound
ORA-02063: preceding line from MYLINK
at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:134)
at oracle.jdbc.ttc7.TTIoer.processError(TTIoer.java:289)
at oracle.jdbc.ttc7.Oall7.receive(Oall7.java:582)
at oracle.jdbc.ttc7.TTC7Protocol.doOall7(TTC7Protocol.java:1986)
at oracle.jdbc.ttc7.TTC7Protocol.parseExecuteFetch(TTC7Protocol.java:1144)
at oracle.jdbc.driver.OracleStatement.executeNonQuery(OracleStatement.java:2152)
at oracle.jdbc.driver.OracleStatement.doExecuteOther(OracleStatement.java:2035)
at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:2876)
at oracle.jdbc.driver.OraclePreparedStatement.executeUpdate(OraclePreparedStatement.java:609)
The same code to insert / update the exact same table in local instance works fine.No any binding problem. So i am pretty sure all ? mark in SQL are set with some value before sending to Oracle.
Someone please advise what is possible problem. Db link is not set correctly? or we can not update remote table by dblink.
By the way i can do insert / update from TOAD to the remote table through DBLINK. Problem happens only in Java code.
thanks!
Garydblink links from one database instance to another.
So it is certainly a source of possible problems when it works on one database and not another.
You should start by looking at the dblink and it possible testing it in the database not via java.
Note as well that that error suggests that it is coming from the Oracle database. I believe if you had a bind parameter problem in your java code that the error would come from the driver. But that is a guess on my part. -
How to find out the selected column in Table Control
Hi all,
How to find out the selected column in Table Control?
Thanks & Regards,
YJRHi,
Let your table control name in Screen painter be TC1.
READ TABLE TC1-COLS INTO WA_COLS (some wok area)
WITH KEY SELECTED = 'X'.
IF SY-SUBRC = 0.
CLEAR: W_DUMMY, W_COL_NAME.
SPLIT WA_COLS-SCREEN-NAME AT '-' INTO W_DUMMY
W_COL_NAME.
endif.
W_COL_NAME gives you the column name.
Hope it helps.
cheers
sharmistha
Maybe you are looking for
-
Poor Broadband Since Upgrade at Exchange
Hi All, I wish someone could solve my problem. BT upgraded the exchange in mid-February. I received this email on the 16th - Good news This is to let you know that we've now upgraded your line and you should now have an improved, more consistent broa
-
My iphone 4 will not back up to icloud
how do i get my phone to back up to back up to icloud when in my itunes i have it set to back up to icloud and on my phone its on but ye it still wont back up to icloud?
-
After "upgrading" to v 7...
entire folders from my library disappeared. the track names still showed up in my library, but when i try to play them, it puts an exclamation mark next to the song, and tells me it can't locate the original file. does anybody know what happened, and
-
I have a workmate who supplies JPEGs from Lightroom 3, and has them set to export with the sRGB profile, (I have checked his settings) which is fine as we use them to create PDF files for online use. However, even though they are exported as sRGB the
-
FK across schemas in Data Modeling
Hello, how can I create a foreign key across schemas in SQL Developer Data Modeling? Must both tables be on the same relational model? Otherwise I cannot create the relation because both tables must be displayed on the same diagram in order to draw a