How to use a value as column name in Triggers?
Hello All!!!!!
How can i use a column value instead of field name in triggers? e.g. table X has one column and having following data.
COL1*
Id
Name
Contact No.
now in triggers i want to use "Id" instead of :new.id, is it possible?
Any solution?
actually i am trying to write a trigger on lets say Table2 and i dont want to specify the column name in the trigger.
CREATE OR REPLACE TRIGGER TR_AIUDR_002
AFTER UPDATE
ON mytable
FOR EACH ROW
DECLARE
CURSOR C IS
SELECT * FROM t_table_columns;
BEGIN
IF UPDATING then
FOR I IN C LOOP
IF *:new.column_name <> :OLD.column_name* THEN
insert into....
END IF;
END LOOP;
END IF;
END TR_AIUDR_002;
instead of :new.column_name <> :old.column_name i want to compare on the base of loop column
Edited by: rha2 on Jan 31, 2009 7:04 PM
Similar Messages
-
How to use string as a column name
Hello,
I have a fn getField() that returns a column delimited string - amt1,amt2 . I want to use this string as the column name in a second query on table MASTER_AMT and get the values for amt1 and amt2...so when i try....
select getField( 'NPC_NOYTG' ) FROM MASTER_AMT
WHERE ACTI_CODE = 'NPOR';
the o/p i get is...
GETFIELD('NPC_NOYTG')
AMT1,AMT2,AMT3
instead of...
AMT1 AMT2
500 0
that i require.
Any ideas on how to convert the string returned to a column name?
Thanks very much
rgdsTry this ....
In SQL*PLUS
SQL> var ref_c refcursor
--- Then type the follwing at SQL prompt
declare
cursor cur is
select column_name
from user_tab_columns a,
(select upper(getField( 'NPC_NOYTG')) fld FROM MASTER_AMT
WHERE ACTI_CODE = 'NPOR') col_lst
WHERE
instr(chr(44) || col_lst.fld || chr(44),chr(44) || a.COLUMN_NAME || chr(44) ) > 0
AND table_name = 'MASTER_AMT';
v_str varchar2(1000):= ' ';
begin
for c in cur loop
v_str := v_str || c.column_name || ',' ;
end loop;
v_str := substr(v_str,1,len(v_str)-1);
open :ref_c for
'select ' || v_str || ' from master_amt';
end;
--- after executing the above block, type the following at SQL prompt
SQL > print ref_c
Please let me know if this works for you. This should for any number of columns returned by the function.
Shakti
(http://www.impact-sol.com)
(Developers of Guggi Oracle) -
How to use INSERT with no column name specified?
I want to insert rows into a database table using JDBC's PreparedStatement. I want to specify all values for each row, so that in plain SQL I would not have to specify column names. I wonder if I can do same thing with JDBC in the same manner (it would save a lot of network traffic as far as I can understand)? The problem is:
I need to know the data types of the columns to use correct setXXX method on my PreparedStatement. For example: ps.setString() for CHAR data and ps.setBytes() for binary data. I can use Connection.getMetadata().getColumns(..,..,tableName,'%') to get column types for all columns in my table as a ResultSet. However but I am not sure if I get them in the right order, i.e. in the order in which the columns have been defined for the table in CREATE TABLE.
So it seems I have a tough choice: to get type information in order externally or to specify (and probably transfer via network) column names in each INSERT statement. :-(
Do I have a better choice? Any ideas will be highly appreciated.....if I get them in the right order, ....Only reason for that is if you are using a meta-data type solution. If you are then there is no solution. After all customer name and address are both just text. How could you tell which is first even if you had a way to handle the types?
But if your inserts are fixed then try using varchars (single ticked entries.) This depends on the database/driver. If is supported then you will have to use SimpleDateFormat to format dates/times in the correct format for the database or use a prepared statement with bind variables. -
Using select list value as column name in SQL
Folks,
Thanks in advance for any help with this
I have a select list with two values (Instance and Username) created by
STATIC2:Username;USERNAME,Instance;INSTANCE
I am trying to pass the value of this (:P2_SELECT) and use it as a column name in a SQL query as below
select USERNAME,
INSTANCE
from table_name
where :P2_SELECT like '%'||:P2_TEXTSEARCH||'%'
When I substitue the :P2_SELECT for one of the values (either instance or username) this works fine
I suspect it is due to how Application Express interprets the value of :P2_SELECT
Any help would be much appreciated!
GarethThanks Munky that worked a treat!
The next hurdle I have now is that because I have changed the region type to "PL/SQL Function(returning SQL Query)" there is no longer the option to add sorting to the columns as I have had to change the Source option to "Use Generic Column Names (parse query at runtime only)"
I will have a scout around and see how I can get around this
Gareth -
How to use Special value set with Column clause to display addtional column
hi
can anyone tell me
How to use Special value set with Column clause to display addtional column
how can i use FND POPID and with COLUMN clause ?Dear Yaseen,
To get the value in formula cumulative,after you have created the formula for that particular key figure,go to edit and click on tab "calculations".
In that select overall result as 'count all values not equal to zero' and single result as 'count all values not equal to zero' .
And mark the cumulative check box underneath.
I hope you get the desired result and please do me favour .
Sumit goomber -
Reposting:urgent....how to use hashtable values
Hi
if i get all lovsession results in to a hash table
how to use them
i mean how to use the value of particular field in hash table(lov ).
is it <hashtable>.get(object name);
if it is what should be my object name...is it VO attribute of LOV???or the Id in that lov page??
please help me out..
Regards
Sandeep.Gif(pageContext.isLovEvent())
String lovInputSourceId = pageContext.getParameter(SOURCE_PARAM);
Hashtable lovResults = pageContext.getLovResultsFromSession(lovInputSourceId);
if (lovResults != null)
value = (String) lovResults.get("<Lov Item Name>");
} -
How to use Table valued MSSQL function in OBIEE
Hi all,
Can some one help me to understand how to use table valued function in OBIEE? I want to use a table valued function (MSSQL function, with some input parameter), in the physical layer to pull the data?
I know for MSSQL Stored Procedure we can write as
EXEC SP_NAME @Parameter = 'VLUEOF(NQ_SESSION.Variablename)'
but now I have a table valued function in the query window I can get the data as
select * from myfunction(parametervalue)
In physical layer of OBIEE I have tried as
select * from myfunction('VLUEOF(NQ_SESSION.Variablename)'), but I'm getting error as the NQ_SESSION variable doesn't have a value , but actually I have initialized the variable but still Im getting error.
Can some one help me to solve this.
Thanks,
MithunFollow this link and try yourself. let me know for issues
Substring instr issue in obiee
Appreciate if you mark
Edited by: Srini VEERAVALLI on Feb 20, 2013 8:13 AM -
How to use the default database service name on creating procedure for data
how to use the default database service name on creating procedure for datagaurd client failover ??? all oracle doc says create a new service as below and enable at DB startup. but our client is using/wanted database default service to connect from application on the datagaurd environment (rac to non rac setup).please help.
Db name is = prod.
exec DBMS_SERVICE.CREATE_SERVICE (service_name => 'prod',network_name =>'prod',failover_method => 'BASIC',failover_type => 'SELECT',failover_retries => 180,failover_delay => 1);
says already the service available.
CREATE OR REPLACE TRIGGER manage_dgservice after startup on database DECLARE role
VARCHAR(30);BEGIN SELECT DATABASE_ROLE INTO role FROM V$DATABASE;
IF role = 'NO' THEN DBMS_SERVICE.START_SERVICE('prod');
END IF;
END;
says trigger created, but during a swithover still the service is listeneing on listener.
tns entry.
prod =
(DESCRIPTION =
(ADDRESS_LIST =
(LOAD_BALANCE = YES)
(ADDRESS = (PROTOCOL = TCP)(HOST = prod1)(PORT = 1521))
(ADDRESS = (PROTOCOL = TCP)(HOST = prod2)(PORT = 1521)) ---> primary db entry
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = proddr)(PORT = 1521)) --> DR DB entry
(CONNECT_DATA =
(SERVICE_NAME = prod)
thanks in advance.
Edited by: 854393 on Dec 29, 2012 11:52 AMHello;
So in the example below replace "ernie" with the alias you want the client to use.
I can show you how I do it :
First an entry need to be added to the client tnsnames.ora that uses a SERVICE_NAME instead of a SID.
ernie =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = Primary.host)(PORT = 1521))
(ADDRESS = (PROTOCOL = TCP)(HOST = Standby.host)(PORT = 1521))
(CONNECT_DATA =
(SERVICE_NAME = ernie)
)Next the service 'ernie' needs to be created manually on the primary database.
BEGIN
DBMS_SERVICE.CREATE_SERVICE('ernie','ernie');
END;
/After creating the service needs to be manually started.
BEGIN
DBMS_SERVICE.START_SERVICE('ernie');
END;
/Several of the default parameters can now be set for 'ernie'.
BEGIN
DBMS_SERVICE.MODIFY_SERVICE
('ernie',
FAILOVER_METHOD => 'BASIC',
FAILOVER_TYPE => 'SELECT',
FAILOVER_RETRIES => 200,
FAILOVER_DELAY => 1);
END;
/Finally a database STARTUP trigger should be created to ensures that this service is only offered if the database is primary.
CREATE TRIGGER CHECK_ERNIE_START AFTER STARTUP ON DATABASE
DECLARE
V_ROLE VARCHAR(30);
BEGIN
SELECT DATABASE_ROLE INTO V_ROLE FROM V$DATABASE;
IF V_ROLE = 'PRIMARY' THEN
DBMS_SERVICE.START_SERVICE('ernie');
ELSE
DBMS_SERVICE.STOP_SERVICE('ernie');
END IF;
END;
/lsnrctl status - should show the new service.
When I do this the Database will still register with the listener. I don't give that to the clients. That one will still be available but nobody knows about it. Meanwhile "ernie" moves with the database role.
So in my example the default just hangs out in the background.
Best Regards
mseberg
Edited by: mseberg on Dec 29, 2012 3:51 PM -
if i get all lovsession results in to a hash table
how to use them
i mean how to use the value of particular field in hash table(lov ).I'm not clear what exactly are you looking for? Is it just the printing/reading of values in hashtable or some interaction of those values with beans?
--Shiv -
Need to use Select List value as column name
I want to have a WHERE ? IS BETWEEN ? AND ? clause.
I am using the PL/SQL Query returning a SQL Query as a report. This uses bind variables for items I had set on my form..... If I hardcode something like:
'WHERE STARTDATE IS BETWEEN '||
'TO_DATE(:P1_START,''dd-MON-YYYY HH24:MI'') AND '||
'TO_DATE(:P2_END,''dd-MON-YYYY HH24:MI'')';
I have no problem, but I have 2 date columns, STARTDATE and ENDDATE, and would like to use the value in a select list and not have to hardcode "STARTDATE" in there. I have not been able to do this, does anyone know how to use a bind variable as a column name? From reading some posts I think it might not be possible.Heather,
You're on the right track, just glue in the column name so that it becomes part of the returned query string from the function (...'WHERE '||:COLNAME||' IS BETWEEN '|| ...).
Note that the bind variable is not part of the returned query string, but the column name obtained from the bind variable when the function executes does become part of the query string.
Scott -
How to use Default value in a column in Tabular form in insertion or upda
Hello,
I am trying to use Default values so that user need not have to enter data, but when I select default type and put a default value, I see an error message, if I try to add a new row.
How can I use a default value in a Column in a Tabular Form?
Gouri
Edited by: user1046395 on Apr 3, 2009 9:58 AMGouri,
You can just simply edit to each column's report attribute. For example,
To set default date,
Default Type: PL/SQL Expression of Function
Default: sysdate
To set default text,
Default Type: PL/SQL Expression of Function
Default: *'CLERK'*
If you still have an error, what is the error message?
Ittichai -
How to use a value taken in a variable as a table name in a query?
I am fetching a value in a variable as:
<select application_short_name into l_appl_nm from fnd_application where application_id=:p_appl_id>
Now I need to use the value fetched in variable "l_appl_nm" as a table partition name in next query.
Can anyone please guide me on this concept.
Expecting replies asap !!I am fetching a value in a variable as:
<select application_short_name into l_appl_nm from fnd_application where application_id=:p_appl_id>
Now I need to use the value fetched in variable "l_appl_nm" as a table partition name in next query.
Wrong.
This is NOT how partition pruning should be applied.
Expecting replies asap !!
In that case, the forum members who provide their experience and knowledge for free, expects you to PAY for that.
You want make demands on this volunteer forum? Then by the same token, payment demands can be made on you.
So.. are you going to pay up? -
How to use a value int the DAT file as name of the PDF file
I need to use a value present in my DAT file as name of the PDF File.
I am using the ,u argument in the Print Agent and I know this causes the pdf document to get a generic filename.
Please help me.
ThanksSee my response to this same question you posed in the Output Designer forum.
http://www.adobeforums.com/webx/.59b585c2/0 -
How to retrieve DB links and column names details used in code
Hi All,
I am looking for code that will retrieve database links name, referenced object and column names used in source code within the schema.
It’s easy enough to find the link names using xxx_db_links / user_source, the trick part it to list the column names used within the code.
Any expert advice is much appreciate
Thanks
AaliThat wil not give me column names .
Thanks
Message was edited by:
aalishan -
How to get the value of column from previous row to current row?
Hi All,
I am facing a critical problem in SQL query (for reporting purpose (COGNOS)). please reply to my query.
REQUIREMENT: i want to retrive value of a column (this is not a table column, this will be calculated based expression) from previous row to current row.
EXAMPLE:
TABLE NAME: i have to join multiple tables. so, i am not mentioning table names here.
DISPLAY COLUMNS in the report: item, loc, sku, beginval (not table column), endval (not table column, this will calculated based on some expressions), etc. Here, first time the value of BEGINVAL will be taken from some x column name of x table. ENDVAL will calculated based on the expression. For the next row onwards, BEGINVAL will become the value of ENDVAL and the value of ENDVAL will be calculated based on the expression and this expression uses the value of BEGINVAL.
my report will look like below.
ITEM LOC SKU BEGINVAL ENDVAL
1 HYD 1-HYD 10 10+1+2 (13)
2 HYD 2-HYD 13 13+1+2 (16)
3 SEC 3-SEC 16 16+1+2 (19)
4 SEC 4-SEC 19 19+1+2 (22)
etc....
in the above output, BEGINVAL and ENDVAL columns are not part of any table. they are alias column names.if you observe intially BEGINVAL will be assigned to some value, but from subsequent rows, BEGINVAL will become the ENDVAL of previous row.
Please help me on how to write this query?Hi, please find the detail description of the problom.
DDL (table scripts)
ITEM
CREATE TABLE ITEM
ITEM VARCHAR2(50 CHAR) NOT NULL,
DESCR VARCHAR2(50 CHAR) DEFAULT ' ' NOT NULL,
UOM VARCHAR2(50 CHAR)
SKU
CREATE TABLE SKU
ITEM VARCHAR2(50 CHAR) NOT NULL,
LOC VARCHAR2(50 CHAR) NOT NULL,
OH float
SKUPROJSTATIC
CREATE TABLE SKUPROJSTATIC
ITEM VARCHAR2(50 CHAR) NOT NULL,
LOC VARCHAR2(50 CHAR) NOT NULL,
STARTDATE DATE
VehicleLoad
CREATE TABLE VEHICLELOAD
LOADID VARCHAR2(50 CHAR) NOT NULL,
DESCR VARCHAR2(50 CHAR) DEFAULT ' ' NOT NULL,
SHIPDATE DATE DEFAULT TO_DATE('01/01/1970','MM/DD/YYYY') NOT NULL,
ARRIVDATE DATE
VEHICLELOADLINE
CREATE TABLE VEHICLELOADLINE
LOADID VARCHAR2(50 CHAR) NOT NULL,
ITEM VARCHAR2(50 CHAR) NOT NULL,
QTY float(126)
DML scripts
I can't provide the the DML scripts, because its very huge data.
Main QUERY is below.
below is the query which i have to write and execute.
select
i.item,
i.descr,
i.unitsperpallet,
sp.loc,
sp.startdate,
'Crucial_IND',
LAG (EndBal,1,0) OVER (ORDER BY STARTDATE) BeginBal,
SP.FCSTCUSTORDERS CustOrders,
SP.COMMITINTRANSOUT,
SP.RECARRIV,
SP.TOTINTRANSIN,
(BeginBal - sp.FCSTCUSTORDERS - sp.COMMITINTRANSOUT + sp.TOTINTRANSIN ) EndBal,
'CuttingQty',
VLL.QTY,
vl.source,
vl.arrivdate,
vl.shipdate,
vl.loadid,
s.oh
from item i, skuprojstatic sp, sku s, VehicleLoad vl, VehicleLoadLine vll
where sp.item = i.item
and s.item=i.item
and sp.item =s.item (+)
and sp.loc = s.loc (+)
and vll.item = s.item
and vll.loadid = vl.loadid
and to_char(sp.startdate ,'mm/dd/yyyy') = to_char(vl.arrivdate,'mm/dd/yyyy')
and sp.loc = vl.dest (+)
order by sp.startdate
problem description: in the above query, BeginBal and EndBal is what i am looking for. when i execute this query, oracle throwing an error saying that alias names can't be used as expressions. For the first row, the BeginBal should be the value sku.OH and for the subsequent rows, this value will be the previous row value of EndBal.
Maybe you are looking for
-
Printer recommendations for airport express
Hi all, I posted a question regarding printer compatibility with airport express. I already bought two and both were glitchy. I am trialing a canon s520 with the view of buying the new model. I put up a post, and got a lot of answers. Unfortunately s
-
Step by step Data loading to BI 7.0 from SAP R/3 not from flat files
Dear Guru's As i am new to BI 7.0, i need to extract the data from R/3 to BI. so could anyone help me in this regrds Thanks C.S.Ramesh
-
Q: Another jsp drop-down menu problem+propeblem with savng button
Well i have many problems: Starters i use eclipse with tomcat and postgres. I have to create a jsp page that shows some data directly from database. This is what i have so far: <%@ page language="java" contentType="text/html; charset=ISO-8859-1"
-
No Validity Date in BUS1065 Hired Event
Hi, when <b>bus1065</b> event <b>Hired</b> is triggered from PA40, the key <b>ValidityBegin</b> is not set. Does anybody know why this key is not set and how can I fix the problem? Thanks in advance. /Elvez
-
My Nokia Store is in Chinese. I need it to be replaced by an English Nokia Store because I can only communicate in English. Please solve this problem for me so that I can access important apps and other materials from Nokia Store. Attachments: Proble