Issues in updating OE_ORDER_HEADERS_ALL attribute columns in trigger
I have the requirement to update the attribute4 of the oe_order_headers_all based on certain data validations. A DFF has been defined on attribute4 as well. When i try to create a before insert trigger on oe_order_headers_all to update the attribute4 values, trigger completes without any errors, but the attribute4 is not getting updated with the data.
Is there any restriction to insert the values on attribute columns of the Oracle base tables? Because when i tried the after update trigger the attribute columns could retain the values.
Can somebody help me out on this issue?
Create Or Replace Trigger OE_HEADER_TRIG_TEST
Before insert
ON OE_ORDER_HEADERS_ALL
REFERENCING NEW AS NEW OLD AS OLD
FOR EACH ROW
declare
v_customer_number ra_customers.customer_number%type;
v_ship_to_org_id oe_order_headers_all.ship_to_org_id%type ;
v_country_code varchar2(50);
begin
v_ship_to_org_id := :NEW.ship_to_org_id;
select rac.customer_number,
country
into v_customer_number,
v_country_code
from ra_addresses_all raa,
ra_site_uses_all ras,
ra_customers rac
where ras.address_id = raa.address_id
and ras.site_use_id = v_ship_to_org_id
and ras.primary_flag = 'Y'
and raa.customer_id = rac.customer_id;
:new.attribute4 := v_customer_number;
:new.attribute5 := v_country_code;
exception
when others then
raise_application_error(-20202,'Error in trigger'||sqlerrm);
end;
**I have verified that attributes are getting assigned in the trigger but is not stored in the table.
Similar Messages
-
Issue in Addition of attribute column in VO
Hi All,
I have a custom VO in which dependent on custom EO which requires a extra attribute to be added. i added that attribute in both EO & VO. But changed the definition of page to add this extra field to accomdate the extra attribute, im getting below error, i have checked VOimpl and VOrowimpl both the addition of new attribute, need suggestion in this regard.
java.lang.NullPointerException
at oracle.jbo.server.ViewObjectImpl.getAttributeIndexOf(ViewObjectImpl.java:4166)
at oracle.apps.fnd.framework.webui.OAMessageLovInputHelper.getMinCharsForLookAhead(OAMessageLovInputHelper.java:3944)
at oracle.apps.fnd.framework.webui.beans.message.OAMessageLovInputBean.getMinCharsForLookAhead(OAMessageLovInputBean.java:1249)
at oracle.apps.fnd.framework.webui.OAMessageLovInputHelper.addLookAheadData(OAMessageLovInputHelper.java:3206)
at oracle.apps.fnd.framework.webui.OAMessageLovInputHelper.processRequestAfterController(OAMessageLovInputHelper.java:1106)Hi,
Looks like your newly added attribute didn't take effect,
Did you added a new column in the database?
In EO how did you added the new attribute? using sync DB option?
In the VO query did you added the new attribute as the last column?
After adding the Attribute in the VO, did you checked the Attribute Mapping is showing correct mapping?
Thanks,
With regards,
Kali.
OSSi. -
Attribute Columns in Table Fnd_Lookup_Values
Hello All, I am trying to update the attribute columns (Attribute1, Attribute2, Attribute3 etc) in the table Fnd_Lookup_Values from the Applications (Forms) side. How do I do it? From Application Developer > Application > LookUps > Common, I can Enter/Update only Lookup Code, Meaning, Description, Tag Effective Dates. I want to enter values in the Attribute Columns too. Please help!!
Thank You, Naveen Gagadam.Hi,
You need to define the DFF first from the application. For that:
1. Go to System Administrator responsibility (or any of the Super User responsibilities in the system)
2. Go to the DFF definition screen: Application > Descriptive > Segments
3. Search your DFF. In your case:
- Application: Application Object Library
- Title: Common Lookups
4. Unfreeze the DFF (if it's frozen)
5. Click on Segments button and define the attributes you want to populate
Once done that, open the lookups screen and you will be able to populate the attributes.
Hope it helps. -
Can we update oracle standard table Attributes column by custom trigger?
Can we update the oracle Standard table's Attributes column using custom trigger? Is it allowed by oracle? Is this supported?
ThanksATTRIBUTE columns store DFF information and therefore custom code can be used to update their contents. Care must be taken that such updates do not cause "logical" corruption (an ATTRIBUTE column may be designed to store the color of a product, for example, but an incorrect SQL statement can update the value to a numeric one, thus causing corruption - Oracle does not have a means to check the validity of these update statements). Also, some localizations, such as Brazil and India, reserve some ATTRIBUTE columns for their use - updating such columns is not supported. More information may be found in the Flexfields Guide for your release at http://www.oracle.com/technology/documentation/applications.html
HTH
Srini -
Issue in Invoking an Updatable View with Instead of Trigger
Hi,
I am trying to insert a record using Updatable View with Instead of Trigger. When i try to save the data, i get the below error:
java.sql.SQLException: ORA-01403: no data found
ORA-06512: at line 1
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:457)
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:405)
at oracle.jdbc.driver.T4C8Oall.processError(T4C8Oall.java:889)
at oracle.jdbc.driver.T4CTTIfun.receive(T4CTTIfun.java:476)
at oracle.jdbc.driver.T4CTTIfun.doRPC(T4CTTIfun.java:204)
at oracle.jdbc.driver.T4C8Oall.doOALL(T4C8Oall.java:540)
at oracle.jdbc.driver.T4CCallableStatement.doOall8(T4CCallableStatement.java:213)
at oracle.jdbc.driver.T4CCallableStatement.executeForRows(T4CCallableStatement.java:1075)
at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1466)
at oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:3752)
at oracle.jdbc.driver.OraclePreparedStatement.executeUpdate(OraclePreparedStatement.java:3887)
at oracle.jdbc.driver.OracleCallableStatement.executeUpdate(OracleCallableStatement.java:9323)
at oracle.jdbc.driver.OraclePreparedStatementWrapper.executeUpdate(OraclePreparedStatementWrapper.java:1508)
at weblogic.jdbc.wrapper.PreparedStatement.executeUpdate(PreparedStatement.java:172)
at oracle.jbo.server.OracleSQLBuilderImpl.doEntityDML(OracleSQLBuilderImpl.java:432)
at oracle.jbo.server.EntityImpl.doDMLWithLOBs(EntityImpl.java:8566)
Can someone help me resolve this issue?
Also it would be great if you can share Sample codes for Invoking an updatable view with instead of trigger on Save/commit.
Regards,
JeevanAs a trigger is executed in the db and not in your app it's really hard to help as you did not give any useful information.
Have you read this blog http://stegemanoracle.blogspot.com/2006/03/using-updatable-views-with-adf.html ?
Timo
Edited by: Timo Hahn on 22.09.2011 09:15
And my friend google also found http://technology.amis.nl/blog/1447/adf-business-components-resfresh-after-insertupdate-and-instead-of-triggers -
Hi,
we are on oracle applications 11i.
We have a requirement to create a descriptive flexfield in the items form and suppliers form to accept ids generated in another system. update would be from database end.
what is the impact of updating attribute columns in two tables: MTL_SYSTEM_ITEMS_B and po_vendors with a simple procedure, i.e without using existing Oracle APIs?
RegardsHi,
here is why i think i need to insert a row the value set table : fnd_flex_values .
after i update the record of the table and alter attribute field with value XXX for value set segment GLOBAL_ID, I go to the application and query the record. It gives me error:
Value XXX for the flexfield segment Global ID does not exist in the value set XX_GLOBAL_ID.
this error only goes away when i insert the value XXX to the descriptive flexfield segment values list.
I defined the value set as independent. If you have another mean where i can accomplish this, I will like to know about it.
From ittoolbox forum i had the name of the package, which is fnd_flex_values_pkg. I need more details on the tables that i need to update or insert rows into and about the package; if possible.
thanks -
API for RA_CUSTOMER_TRX_ALL to update attribute columns
Hi,
Not sure if this is the right place for this but does anybody know if there is an API for updating RA_CUSTOMER_TRX_ALL table
I'm wanting to update the Attibute columns.
Thanks
MalcolmOracle typically does not provide APIs for ATTRIBUTE columns as these need to be maintained by customers.
HTH
Srini -
I am not sure if this is the correct forum for this question, so please forgive if this is posted in wrong forum.
I am new to working with CLOBs in Oracle. The procedure updates a CLOB column which stores large XML files. The XML files are first moved to the /u04 directory, then we execute the procedure which looks for the XML in /u04, then uses those XML files to update the CLOB column.
The procure works fine in our development environment, but doesn't work in our System Test box. No exceptions are thrown in Sys Test, but when we check the CLOB column it's NULL/empty.
Both Dev and Sys Test environments are on the same physical server.
Is there something in the database setup I should be looking for which may cause this difference in functionality?
Code is below. I'm sure it could be better but this is my first go-around with CLOBs.
Any help is greatly appreciated!
--open CLOB used to clear out old XML in CLOB column
dbms_lob.open(v_pre_clob, dbms_lob.lob_readwrite);
-- prep XML CLOB column for update
UPDATE REPORT_TBL
SET REPORT_XML = v_pre_clob
WHERE REPORT_ID = p_rep_id;
--Close pre-update CLOB
dbms_lob.close(v_pre_clob);
--get a reference to the XML CLOB that needs to be updated
select report_xml
into v_clob
from report_tbl
where report_id = p_rep_id for update;
--open the target CLOB and source report xml file in /u04
dbms_lob.open(v_clob, dbms_lob.lob_readwrite);
dbms_lob.open(v_report_xml_file);
--Load the contents of the xml file in /u04 into the CLOB column
dbms_lob.loadclobfromfile(v_clob, v_xml_file,
dbms_lob.lobmaxsize,
v_destination_offset, v_source_offset,
nls_charset_id('US7ASCII'),
v_language_context, v_warning_message);
--Check for the only possible warning message.
if v_warning_message = dbms_lob.warn_inconvertible_char then
dbms_output.put_line('Warning! Some characters couldn''t be converted.');
end if;
--Close both LOBs
dbms_lob.close(v_clob);
dbms_lob.close(v_xml_file);
null;
EXCEPTION
WHEN OTHERS THEN
v_return_code := SQLCODE;
v_return_mesg := SQLERRM;
DBMS_OUTPUT.PUT_LINE('PROCEDURE update_xml_from_file');
DBMS_OUTPUT.PUT_LINE('RETURN_CODE = ' || v_return_code);
DBMS_OUTPUT.PUT_LINE('RETURN_MESG = ' || v_return_mesg);Sorry, pulled that code from development where it was working.
The issue was the GRANT on the /u04 directory. -
Trigger Issue while updating same table
Hi all,
I am creating one after insert trigger on table tests, which will check, if application id is null, application will be fetched from another table and update the table
tests table. But this trigger is not updating the application id of the table tests
CREATE OR REPLACE
TRIGGER TB_REC_APPL_TESTS1
AFTER INSERT ON tests FOR EACH ROW
DECLARE
v_application_id NUMBER;
v_rec_appl_tests_id NUMBER;
v_a_recruit_id NUMBER;
PRAGMA AUTONOMOUS_TRANSACTION;
BEGIN
v_rec_appl_tests_id := :NEW.rec_appl_tests_id;
v_a_recruit_id := :NEW.a_recruit_id;
IF :NEW.a_applic_id IS NULL THEN
SELECT a_applic_id INTO v_application_id FROM recruit WHERE a_recrut_id = v_a_recruit_id;
dbms_output.PUT_LINE(v_application_id||'-'||v_rec_appl_tests_id);
UPDATE tests SET a_applic_id = v_application_id
WHERE rec_appl_tests_id = v_rec_appl_tests_id;--:NEW.rec_appl_tests_id;
END IF;
commit;
END;
Thanks in advance,
Paluser546710 wrote:
Hi all,
I am creating one after insert trigger on table tests, which will check, if application id is null, application will be fetched from another table and update the table
tests table. But this trigger is not updating the application id of the table tests
CREATE OR REPLACE
TRIGGER TB_REC_APPL_TESTS1
AFTER INSERT ON tests FOR EACH ROW
DECLARE
v_application_id NUMBER;
v_rec_appl_tests_id NUMBER;
v_a_recruit_id NUMBER;
PRAGMA AUTONOMOUS_TRANSACTION;
BEGIN
v_rec_appl_tests_id := :NEW.rec_appl_tests_id;
v_a_recruit_id := :NEW.a_recruit_id;
IF :NEW.a_applic_id IS NULL THEN
SELECT a_applic_id INTO v_application_id FROM recruit WHERE a_recrut_id = v_a_recruit_id;
dbms_output.PUT_LINE(v_application_id||'-'||v_rec_appl_tests_id);
UPDATE tests SET a_applic_id = v_application_id
WHERE rec_appl_tests_id = v_rec_appl_tests_id;--:NEW.rec_appl_tests_id;
END IF;
commit;
END;
Thanks in advance,
Palyou are creating triger on the table and updating it. It will not allow to update since you are firing trigger on same table.
Best practice is to use other table to update or any other operation. -
How to Update a clob column..it gives error string literal too long
I am trying to update a clob column of a table but it gives error string literal too long plz tell me what's the issue
ORA-01704: string literal too longPeeyush wrote:
I am trying to update a clob column of a table but it gives error string literal too long plz tell me what's the issue
ORA-01704: string literal too longThere's a problem with my car. It won't start. Why won't it start? Please tell me!
Oh wait, you can't, because I haven't given you nearly enough information...
In other words, if you would like help in trying to work out where you've gone wrong, you should provide a small enough example of your code that demonstrates the error. We might then actually stand a chance of being able to help you! -
Hi I have a requirement to create a list item in Contracts List when a document is uploaded in Contracts Vendor library.
Contracts List will
have columns - Contract Name ( title column), Contract Number, Contract Start date and end date.
Contracts Vendor library will have Contract
Name,Contract NUmber.
User will select the Contract Name from drop down ( this is look up column linked to Contract Name in Contract
List).When user uploads document in Contract Vendor library then item should be created in Contract List with selected Contract Name and
Contract number .
Contracts and Contracts Vendor are related by look up Contract Name. Contract Name is internally a title column in
Contracts List.
Issue1 :
Since Contract number is look up column, while I am creating item the Contract name is not getting updated in
Contracts List. I have to use sharepoint designer workflow to achieve this task. Title colum or Contract Name shows no title.
Issue 2:
One
more issue I am facing is that Contracts List has Section and Division cascaded drop downs when i select values from section and division
dropdowns and save item in Contracts list the values are getting saved in Contract List.
Could anyone suggest me how to handle this ? I am
attaching the screenshots of the list and library structure. TRuly appreciate your help.
Below are screenshots of the list structureHi,
According to your post, my understanding is that you wanted to update a title column in list that is a lookup column to document library in sharepoint designer workflow 2010.
I try to reproduce the issues as follows:
Create a custom list named Contracts List, add columns: Contract Name ( title column), Contract Number(Number), Contract Start date(Data and Time) and Contract End date (Data and Time).
Create a document library named Contracts Vendor library, add columns: Contract Name(Lookup), Contract NUmber(Lookup).
Create a workflow associated to the Contracts Vendor library.
Add action: Create List Item.
5. Start the workflow automatically when an item is created.
6. Upload a document, select the Contract Name and Contract NUmber, the workflow will be started automatically.
7. Open the Contracts List, an item will be added with the Contract Name and Contract Number in the Contracts Vendor library.
Thank you for your understanding.
Best Regards,
Linda Li
Linda Li
TechNet Community Support -
How to update managed metadata column for all file in document library using powershell
Hi,
How to update managed metadata column for all file in document library using powershell?
Any help on it.
Thanks & REgards
Poomani SankaranHi TanPart,
I have changed the code which you have give in order to get the files from SharePoint 2010 Foundation Document Library.But i am getting below error in powershell.
Property 'ListItemCollectionPosition' cannot be found on this object; make sure it exists and is settable.
Could you tell me which is the issues in it?
See the code below.
$web = Get-SPWeb http://ntmoss2010:9090/Site
$list = $web.Lists["DocLib"]
$query = New-Object Microsoft.SharePoint.SPQuery
$query.ViewAttributes = "Scope='Recursive'";
$query.RowLimit = 2000
$caml = '<Where><Contains><FieldRef Name="Title" /><Value Type="Text">Process Documents/Delivery</Value></Contains></Where>' +
'<OrderBy Override="TRUE"><FieldRef Name="ID"/></OrderBy>'
$query.Query = $caml
do
$listItems = $list.GetItems($query)
$spQuery.ListItemCollectionPosition = $listItems.ListItemCollectionPosition
foreach($item in $listItems)
#Cast to SPListItem to avoid ambiguous overload error
$spItem = [Microsoft.SharePoint.SPListItem]$item;
Write-Host $spItem.Title
while ($spQuery.ListItemCollectionPosition -ne $null)
Thanks & Regards
Poomani Sankaran -
How to update the COST column using another table's column
Dear All,
I have table:
table parts: pno, pname, qoh, price, olevel
table orders: ono, cno, eno, received, shipped
table odetails: ono, pno, qty
view:orders_view: ono, cno, eno, received, shipped,sum(qty*price)order_costview:odetails_view: ono, pno, qty, (qty*price)cost
after I update the price in parts, I need to update COST and ORDER_COST too. The orders_view does not have pno, qty, and price, the odetails_view does not have price, how can I update the COST and ORDER_COST. Please help and Thanks in advance!!!
I wrote the update the price in parts:
create or replace procedure change_price(ppno in parts.pno%type, pprice in parts.price%type) as
begin
update parts
set price = pprice
where pno = ppno;
end;
show errorsthis procedure works fine.
I wrote the trigger:
create or replace trigger update_orders_v
after update of price on parts
for each row
begin
update orders_view
set order_cost = sum(parts.(:new.price)*parts.qty)
where parts.pno = :new.pno;
end;
show errorsIt gives me:Errors for TRIGGER UPDATE_ORDERS_V:
LINE/COL ERROR
3/5 PL/SQL SQL Statement ignored
4/22 PL/SQL ORA-00934: group function is not allowed hereplease help!You could add the columns to the tables and then you would need a trigger to update those columns. However, you could just as easily select the price * qty to get the cost, without creating an additional column or trigger. I have no idea what you might want to do with a global temporary table. I think you need to explain what your purpose is, before any of us can suggest the best method. Since I have already demonstrated an update with a view, I will demonstrate an update with the cost column added to the odetails table and a trigger as you asked about. Notice that you will need triggers on both tables, the one that has qty and the one that has price.
scott@ORA92> create table parts
2 (pno number(5) not null primary key,
3 pname varchar2(30),
4 qoh integer check(qoh >= 0),
5 price number(6,2) check(price >= 0.0),
6 olevel integer)
7 /
Table created.
scott@ORA92> create table odetails
2 (ono number(5),
3 pno number(5) references parts,
4 qty integer check(qty > 0),
5 cost number,
6 primary key (ono,pno))
7 /
Table created.
scott@ORA92> create or replace procedure change_price
2 (ppno in parts.pno%type,
3 pprice in parts.price%type)
4 as
5 begin
6 update parts
7 set price = pprice
8 where pno = ppno;
9 end;
10 /
Procedure created.
scott@ORA92> create or replace trigger update_cost1
2 after insert or update of price on parts
3 for each row
4 begin
5 update odetails
6 set cost = qty * :new.price
7 where pno = :new.pno;
8 end update_cost1;
9 /
Trigger created.
scott@ORA92> show errors
No errors.
scott@ORA92> create or replace trigger update_cost2
2 before insert or update of qty on odetails
3 for each row
4 declare
5 v_price parts.price%type;
6 begin
7 select price
8 into v_price
9 from parts
10 where pno = :new.pno;
11 --
12 :new.cost := :new.qty * v_price;
13 end update_cost2;
14 /
Trigger created.
scott@ORA92> show errors
No errors.
scott@ORA92> insert into parts values (1, 'name1', 1, 10, 1)
2 /
1 row created.
scott@ORA92> insert into odetails values (1, 1, 22, null)
2 /
1 row created.
scott@ORA92> -- starting data:
scott@ORA92> select * from parts
2 /
PNO PNAME QOH PRICE OLEVEL
1 name1 1 10 1
scott@ORA92> select * from odetails
2 /
ONO PNO QTY COST
1 1 22 220
scott@ORA92> -- update:
scott@ORA92> execute change_price (1, 11)
PL/SQL procedure successfully completed.
scott@ORA92> -- results:
scott@ORA92> select * from parts
2 /
PNO PNAME QOH PRICE OLEVEL
1 name1 1 11 1
scott@ORA92> select * from odetails
2 /
ONO PNO QTY COST
1 1 22 242
scott@ORA92> -- select works without extra cost column or trigger:
scott@ORA92> select o.ono, o.pno, o.qty, (o.qty * p.price) as cost
2 from odetails o, parts p
3 where o.pno = p.pno
4 /
ONO PNO QTY COST
1 1 22 242
scott@ORA92> -
Issue with updating partitioned table
Hi,
Anyone seen this bug with updating partitioned tables.
Its very esoteric - its occurs when we update a partitioned table using a join to a temp table (not non-temp table) when the join has multiple joins and you're updating the partitoned column that isn't the first column in the primary key and the table contains a bit field. We've tried changing just one of these features and the bug disappears.
We've tested this on 15.5 and 15.7 SP122 and the error occurs in both of them.
Here's the test case - it does the same operation of a partitioned table and a non-partitioned table, but the partitioned table shows and error of "Attempt to insert duplicate key row in object 'partitioned' with unique index 'pk'".
I'd be interested if anyone has seen this and has a version of Sybase without the issue.
Unfortunately when it happens on a replicated table - it takes down rep server.
CREATE TABLE #table1
( PK char(8) null,
FileDate date,
changed bit
CREATE TABLE partitioned (
PK char(8) NOT NULL,
ValidFrom date DEFAULT current_date() NOT NULL,
ValidTo date DEFAULT '31-Dec-9999' NOT NULL
LOCK DATAROWS
PARTITION BY RANGE (ValidTo)
( p2014 VALUES <= ('20141231') ON [default],
p2015 VALUES <= ('20151231') ON [default],
pMAX VALUES <= (MAX) ON [default]
CREATE UNIQUE CLUSTERED INDEX pk
ON partitioned(PK, ValidFrom, ValidTo)
LOCAL INDEX
CREATE TABLE unpartitioned (
PK char(8) NOT NULL,
ValidFrom date DEFAULT current_date() NOT NULL,
ValidTo date DEFAULT '31-Dec-9999' NOT NULL,
LOCK DATAROWS
CREATE UNIQUE CLUSTERED INDEX pk
ON unpartitioned(PK, ValidFrom, ValidTo)
insert partitioned
select "ET00jPzh", "Jan 7 2015", "Dec 31 9999"
insert unpartitioned
select "ET00jPzh", "Jan 7 2015", "Dec 31 9999"
insert #table1
select "ET00jPzh", "Jan 15 2015", 1
union all
select "ET00jPzh", "Jan 15 2015", 1
go
update partitioned
set ValidTo = dateadd(dd,-1,FileDate)
from #table1 t
inner join partitioned p on (p.PK = t.PK)
where p.ValidTo = '99991231'
and t.changed = 1
go
update unpartitioned
set ValidTo = dateadd(dd,-1,FileDate)
from #table1 t
inner join unpartitioned u on (u.PK = t.PK)
where u.ValidTo = '99991231'
and t.changed = 1
go
drop table #table1
go
drop table partitioned
drop table unpartitioned
gowrt to replication - it is a bit unclear as not enough information has been stated to point out what happened. I also am not sure that your DBA's are accurately telling you what happened - and may have made the problem worse by not knowing themselves what to do - e.g. 'losing' the log points to fact that someone doesn't know what they should. You can *always* disable the replication secondary truncation point and resync a standby system, so claims about 'losing' the log are a bit strange to be making.
wrt to ASE versions, I suspect if there are any differences, it may have to do with endian-ness and not the version of ASE itself. There may be other factors.....but I would suggest the best thing would be to open a separate message/case on it.
Adaptive Server Enterprise/15.7/EBF 23010 SMP SP130 /P/X64/Windows Server/ase157sp13x/3819/64-bit/OPT/Fri Aug 22 22:28:21 2014:
-- testing with tinyint
1> use demo_db
1>
2> CREATE TABLE #table1
3> ( PK char(8) null,
4> FileDate date,
5> -- changed bit
6> changed tinyint
7> )
8>
9> CREATE TABLE partitioned (
10> PK char(8) NOT NULL,
11> ValidFrom date DEFAULT current_date() NOT NULL,
12> ValidTo date DEFAULT '31-Dec-9999' NOT NULL
13> )
14>
15> LOCK DATAROWS
16> PARTITION BY RANGE (ValidTo)
17> ( p2014 VALUES <= ('20141231') ON [default],
18> p2015 VALUES <= ('20151231') ON [default],
19> pMAX VALUES <= (MAX) ON [default]
20> )
21>
22> CREATE UNIQUE CLUSTERED INDEX pk
23> ON partitioned(PK, ValidFrom, ValidTo)
24> LOCAL INDEX
25>
26> CREATE TABLE unpartitioned (
27> PK char(8) NOT NULL,
28> ValidFrom date DEFAULT current_date() NOT NULL,
29> ValidTo date DEFAULT '31-Dec-9999' NOT NULL,
30> )
31> LOCK DATAROWS
32>
33> CREATE UNIQUE CLUSTERED INDEX pk
34> ON unpartitioned(PK, ValidFrom, ValidTo)
35>
36> insert partitioned
37> select "ET00jPzh", "Jan 7 2015", "Dec 31 9999"
38>
39> insert unpartitioned
40> select "ET00jPzh", "Jan 7 2015", "Dec 31 9999"
41>
42> insert #table1
43> select "ET00jPzh", "Jan 15 2015", 1
44> union all
45> select "ET00jPzh", "Jan 15 2015", 1
(1 row affected)
(1 row affected)
(2 rows affected)
1>
2> update partitioned
3> set ValidTo = dateadd(dd,-1,FileDate)
4> from #table1 t
5> inner join partitioned p on (p.PK = t.PK)
6> where p.ValidTo = '99991231'
7> and t.changed = 1
Msg 2601, Level 14, State 6:
Server 'PHILLY_ASE', Line 2:
Attempt to insert duplicate key row in object 'partitioned' with unique index 'pk'
Command has been aborted.
(0 rows affected)
1>
2> update unpartitioned
3> set ValidTo = dateadd(dd,-1,FileDate)
4> from #table1 t
5> inner join unpartitioned u on (u.PK = t.PK)
6> where u.ValidTo = '99991231'
7> and t.changed = 1
(1 row affected)
1>
2> drop table #table1
1>
2> drop table partitioned
3> drop table unpartitioned
-- duplicating with 'int'
1> use demo_db
1>
2> CREATE TABLE #table1
3> ( PK char(8) null,
4> FileDate date,
5> -- changed bit
6> changed int
7> )
8>
9> CREATE TABLE partitioned (
10> PK char(8) NOT NULL,
11> ValidFrom date DEFAULT current_date() NOT NULL,
12> ValidTo date DEFAULT '31-Dec-9999' NOT NULL
13> )
14>
15> LOCK DATAROWS
16> PARTITION BY RANGE (ValidTo)
17> ( p2014 VALUES <= ('20141231') ON [default],
18> p2015 VALUES <= ('20151231') ON [default],
19> pMAX VALUES <= (MAX) ON [default]
20> )
21>
22> CREATE UNIQUE CLUSTERED INDEX pk
23> ON partitioned(PK, ValidFrom, ValidTo)
24> LOCAL INDEX
25>
26> CREATE TABLE unpartitioned (
27> PK char(8) NOT NULL,
28> ValidFrom date DEFAULT current_date() NOT NULL,
29> ValidTo date DEFAULT '31-Dec-9999' NOT NULL,
30> )
31> LOCK DATAROWS
32>
33> CREATE UNIQUE CLUSTERED INDEX pk
34> ON unpartitioned(PK, ValidFrom, ValidTo)
35>
36> insert partitioned
37> select "ET00jPzh", "Jan 7 2015", "Dec 31 9999"
38>
39> insert unpartitioned
40> select "ET00jPzh", "Jan 7 2015", "Dec 31 9999"
41>
42> insert #table1
43> select "ET00jPzh", "Jan 15 2015", 1
44> union all
45> select "ET00jPzh", "Jan 15 2015", 1
(1 row affected)
(1 row affected)
(2 rows affected)
1>
2> update partitioned
3> set ValidTo = dateadd(dd,-1,FileDate)
4> from #table1 t
5> inner join partitioned p on (p.PK = t.PK)
6> where p.ValidTo = '99991231'
7> and t.changed = 1
Msg 2601, Level 14, State 6:
Server 'PHILLY_ASE', Line 2:
Attempt to insert duplicate key row in object 'partitioned' with unique index 'pk'
Command has been aborted.
(0 rows affected)
1>
2> update unpartitioned
3> set ValidTo = dateadd(dd,-1,FileDate)
4> from #table1 t
5> inner join unpartitioned u on (u.PK = t.PK)
6> where u.ValidTo = '99991231'
7> and t.changed = 1
(1 row affected)
1>
2> drop table #table1
1>
2> drop table partitioned
3> drop table unpartitioned -
Compare and update the same Column
Hi ,
SQL> select * from
v$version;
BANNER
Oracle Database 10g Express
Edition Release 10.2.0.1.0 - Product
PL/SQL Release 10.2.0.1.0 -
Production
CORE 10.2.0.1.0 Production
TNS for 32-bit Windows:
Version 10.2.0.1.0 - Production
NLSRTL Version 10.2.0.1.0 -
Production
I am having an issue in Updating the column in a Table.......
What i am trying to do is ...Compare 2 column and then update one of the compared column....
Table 1 Name: TEST1 _
bq. LNID \\ NEW_AN8 \\ OLD_AN8 \\ OLD_DESC \\ 2 \\ 123002 \\ 100001 \\ C2370 \\ 125846 \\ 100001 CS24 \\ 123024 \\ 100028 \\ C2392 \\ 125868 \\ 100028 CS25 \\ 123025 \\ 100036 C2393 \\ 125869 \\ 100036 CS26 123026 \\ 100116 \\ C2394 \\ 125870 \\ 100116 \\ CS
TEST2_
SZAN8 SZAN82 SZAN86 SZAT1
123,002 100,001 100,001 C
125,846 100,001 100,001 CS
123,024 100,028 100,028 C
125,868 100,028 100,028 CS
125,869 100,036 100,036 CS
123,025 100,036 100,036 C
125,870 100,116 100,116 CS
123,026 100,116 100,116 C
I wanted to update SZAN82 of TEST2 table..... based on the SZAT1 value ...
I shud be able to pick the CS type record first then the C type record and the SZAN82 value and check whether it is present in the TEST1 table if it present then I shud update the AN82 value,,
UPDATE LPLSCHEMA.LPL_F0101Z2_CUSTOMER C SET (SZAN82)=
(SELECT NEW_AN8 FROM LPL_CROSS_CUSTOMER B,LPL_F0101Z2_CUSTOMER C WHERE C.SZAT1='CS' AND B.OLD_DESC='CS'and C.szan82=B.old_an8);
I tried like tis .... i got an Error sub query more than one rows ...
Thanks in Advance !!
Ananda
Edited by: Ananda on Jan 2, 2009 6:30 PM
Edited by: Ananda on Jan 2, 2009 6:30 PM
Edited by: Ananda on Jan 2, 2009 6:34 PM
Edited by: Ananda on Jan 2, 2009 6:37 PMOr:
UPDATE LPLSCHEMA.LPL_F0101Z2_CUSTOMER C
SET SZAN82 = (
SELECT NEW_AN8
FROM LPL_CROSS_CUSTOMER B
WHERE C.SZAT1='CS'
AND B.OLD_DESC='CS'
AND C.szan82=B.old_an8
WHERE (SZAT1,szan82) IN (
SELECT 'CS',
old_an8
FROM LPL_CROSS_CUSTOMER B
WHERE B.OLD_DESC='CS'
);Or, depending on your version and table structure:
UPDATE (
SELECT C.SZAN82,
B.NEW_AN8
FROM LPL_CROSS_CUSTOMER B,
LPL_F0101Z2_CUSTOMER c
WHERE C.SZAT1='CS'
AND B.OLD_DESC='CS'
AND C.szan82=B.old_an8
SET SZAN82 = NEW_AN8
/SY.
Maybe you are looking for
-
LGWR ASYNC doest not working for redolog files, while archiving is working
Hi All, I am using Oracle Database 10g Enterprise Edition Release 10.2.0.4.0. I have created a database named black. I then creaetd a standby database. now I want to syncronize the redo logs file as well. SO I added log_archive_dest_2='SERVICE=standb
-
Bloggie touch video transfer to ipad2
Are there ways to transfer videos from Bloggie Touch to ipads ?
-
Dear, I want to set the name of the xml sended by mail. I use a botton for this, cane help me to set the name of this file before attachement ! Thanks
-
Can't add wireless client in Airport Extreme, what is and where is 8-digit pin?
Recently we bought a new MacBook Pro and at home I have a wireless network for my computer. I wanted to add the MBP to the network, but without using the network password, so I was looking around on here to see how to do it and I looked at the manual
-
HT204053 Why can't I use my magic jack on this device ?
I need to use my magic jack account on this device but I can't !