TO FIND PRIMARY KEY!
HI FRIENDS I HAVE A ONLY A TABLE NAME OF A PARTICULAR TABLE AND I WANT TO KNOW THAT WHICH COLUMN IS PRIMARY KEY. EVEN I DONT KNOW THE NAMES OF THE COLUMNS OF THAT TABLE.
CAN ANYBODY TELME.
THANKS
RITESH
This one does what you want.
select ctype,collect(c.col) cols
from (
select a.constraint_name,a.constraint_type ctype, b.column_name col
from dba_constraints a, dba_cons_columns b
where ( a.owner = :schema_name ) and ( b.owner = a.owner )
and ( a.table_name = :table_name )
and ( b.table_name = a.table_name )
and ( a.constraint_type in ('P','U') )
and ( a.constraint_name = b.constraint_name )
order by b.position
) c
group by c.constraint_name,c.ctypeBye Alessandro
Similar Messages
-
How i can Find primary key combination?
Hi,
I have small doubt how i can find primary key combination for a record in siebel application.( For example Opportunity list applet or Account list applet or etc.. what is the primary key combination and how i can find that combination for a particular record)
Thanks & RegardsHi
From the applet Identify the Business Component (BC)
From the BC idnetify the table, and the property user key sesuence will give you the proper combination. Column conflic_id is used for handling remote synchronization.
For BC based on S_PARTY, such as COntact, the table mentionned in User PRop will give your the main table used in this case.
Best Regards
EvtLogLvl -
How to find Primary Key for a particular SAP Databse Table?
Hi Guys,
How to find Primary Key and foreign key for Particular SAP Databse table ?for Ex : EKKO , EKPO , EKKN , EKBE , EKBEH , EKET and EKETH.
Thanks,
Srinivas.Use transaction SE11 to display the table. Put the cursor on the field you want to display the check table and click 'Foreign key' push button (a key with an bottom point arrow), then it will show the check table of the foreign of a field.
Or by just simple double click on the field, a pop-up window of all the attribute (including the foreign key and the check table if exists) will show too.
<i><b>Please reward point for helpful answer.</b></i>
Minami -
How to find primary key?
I am trying to impliment a load using JDBC wherein I read the table name, some column names, and associated
column data from a file (delimited or XML). The primary key columns are in the column names / data BUT I don't
know which columns they are (based on the file I'm reading). Even if this information was in the file, I would need to
verify the table I'm targeting does in fact have that primary key. I can insert the records fine BUT to use the records
to update I need to determine from the database which are the primary key columns (by name).
Essentially I'm trying to do the following:
insert record into table
if fails because of duplicate primary key
determine the primary key of the current table
retrieve the already existing record
modify the retrieved record using my load data
update the already existing record in the database
My primary concern, now, is Oracle although I'm hoping to impliment this in as portable a fashion as possible.
Thanks.
R.Parr
TemporalArts
608.833.4578
nullYou can check the DBA_CONSTRAINTS view for that: http://download-uk.oracle.com/docs/cd/B19306_01/server.102/b14237/statviews_1037.htm#i1576022
-
Can anyone suggest a query that would return all of the columns in the primary key of a table? Information on why I'm asking can be found below.
I'm currently using the following query, but it won't work right if there are unique indexes on the table besides the primary key.
"select column_name from all_ind_columns c, all_indexes i where c.index_owner = i.owner and c.index_name = i.index_name and i.table_owner = {me} and i.table_name = {table_name} and uniqueness = 'UNIQUE'"
The reason I'm interested in the primary key is I need to merge the contents of table A into a table B with the same structure, and before I can do this I need to delete any rows that will cause insertion to fail.In the column for constrain_type P is for primary key and R is for Foreign key
COLUMN TABLE_NAME NEW_VALUE TT_TAB NOPRINT
TTITLE 'TABLE: ' TT_TAB SKIP1
break on table_name skip page on constraint_name on constraint_type
COLUMN CONSTRAINT_NAME FORMAT A35
COLUMN COLUMN_NAME FORMAT A35
COLUMN REF_TAB_COL FORMAT A35
COLUMN POSITION NOPRINT
SELECT a.table_name, A.CONSTRAINT_NAME, B.COLUMN_NAME, B.POSITION,
a.constraint_type, NULL REF_TAB_Col
FROM USER_CONSTRAINTS A, USER_CONS_COLUMNS B
WHERE A.CONSTRAINT_TYPE='P'
AND A.CONSTRAINT_NAME = B.CONSTRAINT_NAME
UNION
select a.table_name, A.constraint_name, C.COLUMN_NAME, C.POSITION,
a.constraint_type, B.TABLE_NAME||'.'|| B.COLUMN_NAME
from USER_constraints A, USER_IND_COLUMNS B, USER_CONS_COLUMNS C
where A.CONSTRAINT_TYPE = 'R'
AND A.R_CONSTRAINT_NAME = B.INDEX_NAME
AND A.CONSTRAINT_NAME = C.CONSTRAINT_NAME(+)
ORDER BY 1,2,4 ; -
FindByKey() finds only primary keys?
I want to use the findByKey() method to check if a specific value is already in the database. I use the following code snippet to do this:
String Nr = "SearchStringPart1";
AttributeListImpl al = new AttributeListImpl();
al.setAttribute("UniqueKeyPart1",new Number(1));
al.setAttribute("UniqueKeyPart2",Nr);
Key myKey = myViewObject.createKey(al);
Row[] rows = myViewObject.findByKey(myKey,2);If I run this code snippet "rows[]" will be empty, even if the queried data does exist.
UniqueKeyPart1 and UniqueKeyPart2 form together a unique key in the database and they are marked as "Keys" in the Attribute Settings of "myViewObject". However, they are no primary keys.
If I change the code snippet to query the primary key I do get some results:
AttributeListImpl al = new AttributeListImpl();
al.setAttribute("PrimaryKey",new Number(13));
Key myKey = myViewObject.createKey(al);
Row[] rows = myViewObject.findByKey(myKey,2);Question:
Is it possible, that "findByKey" can only find primary keys? This is not documented in the documentation.I try to keep away as far as possible the column names of the database from the clients.
Unfortunately my column names are somewhat cryptic whereas the attribute names are readable. So if I write a where clause I have to use the cryptic names instead of the readable names which I hoped to be able to use with findByKey().
So the difference is "WHERE CRYPTIC_COLUM_NAME = 123" to "findByKey(RevisionKey, 123)".
However, I expect, that I'll not be able to hide the column names completely from the clients :-(You can hide the names if you use ViewCritiera rather then setup the where clause directly. See oracle.jbo.ViewCriteria and
oracle.jbo.ViewObject.applyViewCriteria method
If that's true, then when you set the VO key attribute for UniqueKeyPart1 and
UniqueKeyPart2, the ViewObject key is a combination of
PrimaryKey+UniqueKeyPart1+UniqueKeyPart2. That's surprising.
PrimaryKey alway delivers one Row as the primary key is always unique. So what is the sense of appending other attributes checked as "Key Attributes" to the primary key. You will never get more than the one result specified by the primary key.
Obviosly I didn't understand the purpose of the "Key Attribute" checkbox in the view object wizard. Maybe you can help me?Key attributes on ViewObject is used by the framework for the most part is to uniquely identify one row in that ViewObject.
However, this might be an suggestion for an enhancement. I think, my idea to query different colums than the primary key with findByKey() is not so strange. And I think it should not be too difficult to implement this in one of the future releases.You should be able to use ViewCriteria on the ViewObject and not only provide matching values but use * or % to find a pattern as well.
You can also use other QBE features. See the usage in findMode in JClient forms on how you could use ViewCriteria.
Frank -
Find foreign key which are able or not
Same as the topic ~ how can I find all the able/unable foreign key/contraints inside a database ? Using TSQL
Hello,
Please try the scripts provided on the following resources:
http://blog.sqlauthority.com/2009/07/17/sql-server-two-methods-to-retrieve-list-of-primary-keys-and-foreign-keys-of-database/
http://blog.sqlauthority.com/2006/11/01/sql-server-query-to-display-foreign-key-relationships-and-name-of-the-constraint-for-each-table-in-database/
http://blog.sqlauthority.com/2007/09/16/sql-server-2005-list-all-the-constraint-of-database-find-primary-key-and-foreign-key-constraint-in-database/
Hope this helps.
Regards,
Alberto Morillo
SQLCoffee.com -
How to find out the primary key of oracle apps tables
Hii,,
My Question is How to find the primary key in the apps table...Is there any Query or other way to find out???
for eg.
I want to find out the primary key of the AP_INVOICES_ALL table...just tell me how can i get the primary key of this table.
I am currently using toad for the query..
Please guide me...you can define the primary key when you create table
or add the primary key after the table creation by 'ALTER TABLE ... ADD constraint pk_nme primary key (col1, col2)';
you could use below sql to check the detail of primary key:
1) check out the table definition directly:
select dbms_metadata.get_ddl('TABLE','EMP') FROM DUAL;
2) check out the columns of primary key:
select * from user_constraints where constraint_type='P' AND table_NAME='EMP';
select * from user_cons_columns where CONSTRAINT_NAME='PK_EMP';And BTW, it is madam, not sir. :)
Edited by: PhoenixBai on Dec 17, 2010 1:07 PM -
DBMS_CDC find only the columns that are changed along with the primary key in the table
Hello,
We are having a requirement to find the change data in the production environment.
We are planning to use the DBMS_CDC utility.
But for example in the create change table 1 picked emp_id,ename, address, salary,dob.
I have a sample data of
empid
ename
address
salary
DOB
1
test1
24 test street
2000
20-Jan-98
2
test2
25 test street
2500
15-Aug-97
if ename for empid 1 is changed to test1_test3 from test1.
My CDC is capturing the values in the old and new values in the 5 columns.
But i need to get only the empid (primary key of the source table) and the ename column as only that's been updated not the rest of the 3 columns.
Can i accomplish this.
Please advice.Hello,
Thanks for the information.
but if i change the change table then i will miss the other columns right?
I want to get the columns( empid and ename) only if ename is changed. i.e when ever any column in emp table changes i need to get all the columns where the data is changed along with the primary key columns empid.
Is there any way i can tweak the parameters so that i can achieve this or is there any other way using the cdc i can get this data.
Thanks -
Please give the query to find out primary key in table in Sql plus
Dear friends,
Please give me the query to find out the primary key in Sql plus.hi
SQL> DESC user_constraints
Name
OWNER
CONSTRAINT_NAME
CONSTRAINT_TYPE
TABLE_NAME
SEARCH_CONDITION
R_OWNER
R_CONSTRAINT_NAME
DELETE_RULE
STATUS
DEFERRABLE
DEFERRED
VALIDATED
GENERATED
BAD
RELY
LAST_CHANGE
INDEX_OWNER
INDEX_NAME
INVALID
VIEW_RELATED
SQL> SELECT constraint_name,table_name,r_constraint_name,status
2 FROM user_constraints WHERE constraint_type='P';
CONSTRAINT_NAME TABLE_NAME R_CONSTRAINT_NAME STATUS
SYS_C003141 CUSTOMERS ENABLED
PK_DEPT DEPT ENABLED
SYS_C003139 SALESREPS ENABLEDKhurram -
Finder Methods other than by Primary key
How should the Finder methods other than by Primary
key in Container MB be implemented? In Bean class?
I did some search in archives to no avail.
Thanks!!
SriramI think it might be different on different app servers, at least until EJB 2.0 is implemented everywhere. I found a bit of info on the matter:
http://www.jboss.org/documentation/HTML/ch06s07.html -
How to find out the primary key column of a database table?
Hi
Given the following scenario :
Given an inputfield, the user can enter a table name. The code behind will base on the table name given and extract out the fieldname of the primary key and concatenate the two field to become a unique string.
Eg. Order ID and Product ID make out a primary key.
How do i achieve that? Any code sample?
Regards,
RaydenCheck the below code :
REPORT zTest no standard page heading.
data : i_DD03P like DD03P occurs 0 with header line.
data v_table like DCOBJDEF-NAME.
parameters : p_table like dd02l-tabname.
start-of-selection.
v_table = p_table.
CALL FUNCTION 'BDL_DDIF_TABL_GET'
EXPORTING
NAME = v_table
STATE = 'A'
LANGU = 'E'
IMPORTING
GOTSTATE =
DD02V_WA =
DD09L_WA =
TABLES
DD03P_TAB = i_DD03P
DD05M_TAB =
DD08V_TAB =
DD12V_TAB =
DD17V_TAB =
EXCEPTIONS
ILLEGAL_INPUT = 1
OTHERS = 2
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
loop at i_DD03P.
if i_dd03p-KEYFLAG = 'X'.
write:/ 'Key fields', i_dd03p-FIELDNAME.
endif.
endloop.
Thanks
Seshu -
Null value in detail table's primary key
I use Business Components Data Form to define a master-detail java panel.
I don't display the primary key column in the detail grid control.
Then I click on "+" to add a row, enter a value (the 2nd part of the detail table's primary key) and click commit.
I get an error saying that the primary key column that's not displayed is null and the row cann't be committed.
How do I fix this error?My fields are varchar2's.
-- simplified to protect the guilty:
-- (made up from memory, so sql keywords may --be misspelled, but you get the idea)
create table proj (
proj varchar2(10) not null,
constraint proj_pk
primary key(proj)
insert into proj values ('abc');
commit;
-- this table has legal values for -- the master.legal field.
-- in master, legal was changed to a -- ComboBoxControl control from -- TextFieldControl that the wizard -- generated.
create table legal_values (
proj varchar2(10) not null,
legal varchar2(10) not null,
display_order integer not null,
constraint legal_values_pk
primary key (proj, legal)
insert into legal_values
values ('abc', 'one', 1);
insert into legal_values
values ('abc', 'two', 2);
insert into legal_values
values ('abc', 'three', 3);
commit;
create table master (
proj varchar2(10) not null,
masterKey varchar2(15) not null,
legal varchar2(10) not null,
constraint master_pk
primary key (proj, masterKey)
create table detail (
proj varchar(10) not null,
masterKey varchar(15) not null,
detailkey varchar(10) not null,
display_order integer not null,
status varchar2(12) not null, -- user can only update this field
constraint detail_pk
primary key(proj, masterkey, detailkey)
-- legal rows for detail table
create table detail_values (
proj varchar2(10) not null,
detailkey varchar2(10) not null,
display_order integer not null,
constraint detail_values_pk
primary key(proj, detailkey)
insert into detail_values values
('abc', 'status a', 1);
insert into detail_values values
('abc', 'status b', 2);
commit;
-- if their is a foriegn key on details back
-- to master, then you get the
-- "mutating table" error when trigger
-- occurs.
create or replace trigger master_tr
after insert on master
for each row
begin
insert into detail
(masterKey, detailKey, status, display_order, status)
select :new.masterkey, detail_key, display_order, ' '
from detail_values;
end;
-- detail.status is a comboboxControl getting --its values of of another db table too.
-- there's also "after update" triggers on master and detail tables that copy the record to master_history and "detail_history" tables if the corresponding table is modified. Thus we have a history of the changes made to the records. The 2 history tables have 2 additional fields than their parents, "modified_date date default sysdate not null" and "modified_by varchar2(30) default user not null" that record when and who made the change. There's also a change type field that records where the change is an insert, delete or update (there 3 triggers per table , so we can correctly record change type as being insert, delete or update into the change_type field).
If you want to make it more real to life, the status value is initially blank, then can be changed to a legal status value (complete or not complete), but can not be changed back to blank.
***P.S. I have to have this ready for production by monday.****
P.P.S After you reply and change to ComboBoxControls in 2 places, try changing the table names and/or the column names (say to follow the DBA's naming convention) or add another field to the composite primary key (and unstated foriegn key) (using drop table/create table). Now try getting the existing code to run. No writing down the old/new table (or column) name pair names. Just run the code and try to fix the code based on the error messages. Are the error messages giving you adequate information to find the problem? -
NULL in primary keys NOT logged to exceptions table
Problem: Inconsistent behavior when enabling constraints using the "EXCEPTIONS INTO" clause. RDBMS Version: 9.2.0.8.0 and 10.2.0.3.0
- NULL values in primary keys are NOT logged to exceptions table
- NOT NULL column constraints ARE logged to exceptions table
-- Demonstration
-- NULL values in primary keys NOT logged to exceptions table
TRUNCATE TABLE exceptions;
DROP TABLE t;
CREATE TABLE t ( x NUMBER );
INSERT INTO t VALUES ( NULL );
ALTER TABLE t
ADD ( CONSTRAINT tpk PRIMARY KEY (x) EXCEPTIONS INTO exceptions );
SELECT * FROM exceptions; -- returns no rows
-- NOT NULL column constraints logged to exceptions table
TRUNCATE TABLE exceptions;
DROP TABLE t;
CREATE TABLE t ( x NUMBER );
INSERT INTO t VALUES ( NULL );
ALTER TABLE t MODIFY ( X NOT NULL EXCEPTIONS INTO EXCEPTIONS );
SELECT * FROM exceptions; -- returns one row
I would have expected all constraint violations to be logged to exceptions. I was not able to find any documentation describing the behavior I describe above.
Can anyone tell me if this is the intended behavior and if so, where it is documented?
I would also appreciate it if others would confirm this behavior on their systems and say if it is what they expect.
Thanks.
- Doug
P.S. Apologies for the repost from an old thread, which someone else found objectionable.I should have posted the output. Here it is.
SQL>TRUNCATE TABLE exceptions;
Table truncated.
SQL>DROP TABLE t;
Table dropped.
SQL>CREATE TABLE t ( x NUMBER );
Table created.
SQL>INSERT INTO t VALUES ( NULL );
1 row created.
SQL>ALTER TABLE t ADD ( CONSTRAINT tpk PRIMARY KEY (x) EXCEPTIONS INTO exceptions );
ALTER TABLE t ADD ( CONSTRAINT tpk PRIMARY KEY (x) EXCEPTIONS INTO exceptions )
ERROR at line 1:
ORA-01449: column contains NULL values; cannot alter to NOT NULL
SQL>SELECT * FROM exceptions;
no rows selected
SQL>
SQL>TRUNCATE TABLE exceptions;
Table truncated.
SQL>DROP TABLE t;
Table dropped.
SQL>CREATE TABLE t ( x NUMBER );
Table created.
SQL>INSERT INTO t VALUES ( NULL );
1 row created.
SQL>ALTER TABLE t MODIFY ( X NOT NULL EXCEPTIONS INTO EXCEPTIONS );
ALTER TABLE t MODIFY ( X NOT NULL EXCEPTIONS INTO EXCEPTIONS )
ERROR at line 1:
ORA-02296: cannot enable (MYSCHEMA.) - null values found
SQL>SELECT * FROM exceptions;
ROW_ID OWNER TABLE_NAME CONSTRAINT
AAAkk5AAMAAAEByAAA MYSCHEMA T T
1 row selected.
As you can see, I get the expected error message. But I only end up with a record in the exceptions table for the NOT NULL column constraint, not for the null primary key value. -
How do I add a record's primary key to a query string and add that to an .xml catalog?
Hello everyone,
I am using Dreamweaver CS3 on a MacBook Pro Leopard 10.5.6 and MAMP 1.7. I am also teaching myself how to work with PHP and MySQL, using David Powers book The Essential Guide to Dreamweaver CS3.
I am trying to create a wedding photography web site, with a personal page after login, which will display the photographs of the customers wedding.
The same page will also be a catalog/shopping cart, so the customer can choose which photo's they want, and pay for them. (I am aware that there are instructions in The Essential Guide in chapter 15 page 515, on how to redirect to a personal page, but it doesn't fully cover what I am asking).
I have already created the login success page, which greets users by name, as per the instructions in The Essential Guide. I have also created a catalog page. However my catalog page is not calling information from the database, instead it is taking information from an XML page using PHP.
I would like to insert a list menu on the login success page, which lists the customers name, and when they select their name they will then select a link that will take them to a personal page with just their wedding photographs.
I am unsure of how to pass the customer_id, in what will be the username list menu, to the page which will contain the customers set of wedding images.
Is it the same process used in chapter 14 where you add a record's primary key to a query string?
I am asking because when I set up a recordset from the MySQL database it lists the images as witten names not actual images, I have tried calling the images with PHP code but it just doesn't work.
The catalog page I have set up at the moment is not calling the images from the database, but directly from the image folder.
Is what I am trying to do possible?
If so how do I pass the customer_id and username to a recordset and link that recordset to the xml catalog so the customers personal wedding images are displayed on the catalog page for the shopping cart? I need step by step instructions, or maybe a link to a good tutorial.
Can somebody help me please?
Thankyou.QuickTime 7 can set the poster frame, but I've not had much success with it. This is what QuickTime 7 Help says about this topic:
+A "poster frame" is a still image of a movie that represents the movie in places like the Finder. The default poster frame is the first frame in the movie. You can change the poster frame.+
+To change a movie's poster frame:+
+In QuickTime Player 7, drag the playhead (or use the arrow keys to move the playhead) to the desired frame.+
+Choose View > Set Poster Frame.+
+To view a movie's poster frame, choose View > "Go to Poster Frame."+
If you don't have QuickTime 7 (version 7.6.6) it can be installed from your Snow Leopard disc using a custom install. Otherwise download it from this Apple site: http://support.apple.com/kb/DL923
John
Maybe you are looking for
-
Synchronizing with Outlook Calendar (Error -50)
Hi, I'm trying to synch my outlook calendar with my new Nano, but every time I try to update when I have the Microsoft Outlook synchronization setting set in Itunes 5.0, I get Unknown Error (-50) updating Ipod. When I turn the option off, it goes awa
-
Can someone help with this scenario: Say I have a master site 1 that has two tables T1A and T1B. I would like to have these tables viewable and updatable on another site 2. Site 1 is on a ship and site 2 is on a shore. Site2 will have access to Site
-
Why I change the energy level of port in PoE switch, the power usage of port no anyt change
I am enable the EnergyWise on a 3560, plug a IP Phone to a port, the result of the power usage read by SNMP is 6kw, when i change the energy level from 10 to 0 by SNMP, the LCD on IP Phone is goes to dark and phone cannot be use, but when I get the p
-
Documentation on PPand MM integration points
Hello I want to know more about the MM and PP integartion. Can somebody please help me by sending some documenations in this regard. regards
-
CAL requirement for AD RMS Windows 2012 R2
Do we need to install RMS CALs on RMS server or they are just required for compliance ?