Making Primary Key on Null Column !

I am not happy the way Oracle treat adding constraint on existing table.
I have one column initially accept NULL Values. after I import the data into this table. this column does not have any NULL value. I want to make this column as Primary Key. How can I do this ?
In SQL Server you can make any column PK any time as long as long it is withen the critaria of PK.
Now whenever in Oracle I try to make one column PK , It gives me error that cannot modify a column from NULL to NOT NULL. Even though there is no NULL value.
I give you a scenerio:
I have 1000s of records in a flat file, Now I donot know if some field is null or not. so I initially make all columns to accept NULL value in Oracle table. After I import that data , I delete the rows where value is NULL. Now I want to make this field as PK. But Oracle will not let me do it. why??????????????
What can I do to modify one NULL column to PK even though there is no NULL value.
Thanks again for your feedback.
Abid Malik

Perhaps I'm missing something, but it works for me
  1  create table t1 (
  2    col1 NUMBER,
  3    col2 NUMBER
  4* )
SQL> /
Table created.
SQL> insert into t1 values( 1, 2 );
1 row created.
SQL> commit;
Commit complete.
SQL> alter table t1
  2    add constraint t1_pk PRIMARY KEY( col1 );
Table altered.Justin
Distributed Database Consulting, Inc.
http://www.ddbcinc.com/askDDBC

Similar Messages

  • Table creation from type - Primary key with 2 columns

    Hello,
    I have to create a table from a type that I created.
    The thing is that I want to create a primary key using two column.
    Because this table is junction table.
    How can I do this ?
    CREATE TABLE CONTENT OF CONTENT_T (ID_COMP primary key, ID_CHAR_J NOT NULL PRIMAR
    Y KEY);
    Oracle return:
    CREATE TABLE CONTENT OF CONTENT_T (ID_COMP primary key,ID_CHAR_J NOT NULL PRIMARY KEY)
    ERROR at line 1:
    ORA-02260: table can have only one primary key
    So I tried:
    CREATE TABLE CONTENT OF CONTENT_T (ID_COMP,ID_CHAR_J NOT NULL PRIMARY KEY)
    ERROR at line 1:
    ORA-02338: missing or invalid column constraint specification
    Tahnk's in advance.
    Edited by: user8266437 on 29 avr. 2009 13:56
    Edited by: user8266437 on 29 avr. 2009 13:56

    SCOTT@orcl_11g> CREATE OR REPLACE TYPE content_t AS OBJECT
      2    (id_comp    NUMBER,
      3       id_char_j  VARCHAR2 (10),
      4       other_cols VARCHAR2 (10));
      5  /
    Type created.
    SCOTT@orcl_11g> CREATE TABLE CONTENT OF CONTENT_T (PRIMARY KEY (ID_COMP, ID_CHAR_J))
      2  /
    Table created.
    SCOTT@orcl_11g> INSERT INTO content VALUES (content_t (1, 'A', 'WHATEVER'))
      2  /
    1 row created.
    SCOTT@orcl_11g> COMMIT
      2  /
    Commit complete.
    SCOTT@orcl_11g> INSERT INTO content VALUES (content_t (1, 'A', 'DUPLICATE'))
      2  /
    INSERT INTO content VALUES (content_t (1, 'A', 'DUPLICATE'))
    ERROR at line 1:
    ORA-00001: unique constraint (SCOTT.SYS_C0062057) violated
    SCOTT@orcl_11g> COMMIT
      2  /
    Commit complete.
    SCOTT@orcl_11g> SELECT * FROM content
      2  /
       ID_COMP ID_CHAR_J  OTHER_COLS
             1 A          WHATEVER
    SCOTT@orcl_11g>

  • In which case composite primary key allows NULL values in it

    Hi to all
    In what case composite primary key allows nulls in it.
    Let us suppose, I created a composite primary key with 2 attributes.
    CREATE TABLE sample
    BNK_Id NUMBER(6),
    BNK_Name VARCHAR2(20),
    CONSTRAINT BNK_Id_Name_PK PRIMARY KEY(BNK_Id,BNK_Name)
    When it allows null values in it.
    thanks in advance

    Are you sure that your instructor was not talking about unique keys? As Solomon said, a primary key always implies not null on all of the columns of the PK. However a unique key does not automatically imply not null, and can have nulls in a column as long as the values in the populated columns are unique.
    SQL> create table test (
      2     id number,
      3     pid number,
      4     descr varchar2(10));
    Table created.
    SQL> alter table test add constraint test_unq
      2     unique (id, pid);
    Table altered.
    SQL> insert into test values (1, null, 'desc1');
    1 row created.
    SQL> insert into test values (2, null, 'desc2');
    1 row created.
    SQL> insert into test values (2, null, 'fail1');
    insert into test values (2, null, 'fail1')
    ERROR at line 1:
    ORA-00001: unique constraint (OPS$ORACLE.TEST_UNQ) violatedJohn

  • SOS: javax.ejb.CreateException: Create failed because primary key is null

    Hello,
    I am desperately trying to get my application server to create a record through CMP 2. My app server is JRun 4.
    Here is the client:
    package com.parispano.tests;
    import java.util.Date;
    import java.util.Properties;
    import javax.naming.Context;
    import javax.naming.InitialContext;
    import com.parispano.account.entity.Account;
    import com.parispano.account.entity.AccountHome;
    public class ClientEJBDeuxTemp {
      public static void main(String[] args) {
        System.out.println("\nBegin account DemoClient...\n");
        try {
          // Create A Demo object, in the server
          // Note: the name of the class corresponds to the JNDI
          // property declared in the DeploymentDescriptor
          // From DeploymentDescriptor ...
          // beanHomeName demo.DemoHome
          Context ctx = getInitialContext();
          AccountHome ahome = (AccountHome) ctx.lookup("AccountEJBHome");
          //System.out.println("Creating Demo\n");
          Account account = ahome.create("toto","toto", "toto","toto","toto","toto","toto","toto","toto","toto","toto",new Date(),new Date());
        catch (Exception e) {
          System.out.println(":::::::::::::: Error :::::::::::::::::");
          e.printStackTrace();
        System.out.println("\nEnd DemoClient...\n");
      static String user     = "admin";
      static String password = "admin";
      static String url      = "ordi:2908";
       * Gets an initial context.
       * @return                  Context
       * @exception               java.lang.Exception if there is
       *                          an error in getting a Context
      static public Context getInitialContext() throws Exception {
        Properties p = new Properties();
        p.put(Context.INITIAL_CONTEXT_FACTORY, "jrun.naming.JRunContextFactory");
        p.put(Context.PROVIDER_URL, url);
        if (user != null) {
          System.out.println ("user: " + user);
          p.put(Context.SECURITY_PRINCIPAL, user);
          if (password == null)
            password = "";
          p.put(Context.SECURITY_CREDENTIALS, password);
        return new InitialContext(p);
    }and here is the exception I get:
    javax.ejb.CreateException: Create failed because primary key is null
    I don't understand why I get this as the primary key is "toto" and therefore is not null.
    Here is the DD:
    <?xml version="1.0" encoding="UTF-8"?>
      <!DOCTYPE ejb-jar PUBLIC "-//Sun Microsystems, Inc.//DTD Enterprise JavaBeans 2.0//EN" "http://java.sun.com/dtd/ejb-jar_2_0.dtd">
      <ejb-jar>
        <display-name>Account EJB</display-name>
        <enterprise-beans>
          <entity>
            <display-name>Account EJB</display-name>
            <ejb-name>AccountEJB</ejb-name>
            <home>com.parispano.account.entity.AccountHome</home>
              <remote>com.parispano.account.entity.Account</remote>
            <local-home>com.parispano.account.entity.AccountLocalHome</local-home>
            <local>com.parispano.account.entity.AccountLocal</local>
            <ejb-class>com.parispano.account.entity.AccountEJB</ejb-class>
            <persistence-type>Container</persistence-type>
            <prim-key-class>java.lang.String</prim-key-class>
            <reentrant>False</reentrant>
            <cmp-version>2.x</cmp-version>
            <abstract-schema-name>account</abstract-schema-name>
            <cmp-field>
            <description>Login</description>
            <field-name>login</field-name>
            </cmp-field>
            <!-- -->
            <cmp-field>
              <description>Password</description>
              <field-name>password</field-name>
            </cmp-field>
            <cmp-field>
              <description>Surname</description>
              <field-name>surname</field-name>
            </cmp-field>
            <cmp-field>
              <description>First Name</description>
              <field-name>firstName</field-name>
            </cmp-field>
            <cmp-field>
              <description>Address One</description>
              <field-name>addressOne</field-name>
            </cmp-field>
            <cmp-field>
              <description>Address Two</description>
              <field-name>addressTwo</field-name>
            </cmp-field>
            <cmp-field>
              <description>Postcode</description>
              <field-name>postcode</field-name>
            </cmp-field>
            <cmp-field>
              <description>City</description>
              <field-name>city</field-name>
            </cmp-field>
            <cmp-field>
              <description>Country</description>
              <field-name>country</field-name>
            </cmp-field>
            <cmp-field>
              <description>Telephone</description>
              <field-name>telephone</field-name>
            </cmp-field>
            <cmp-field>
              <description>Email</description>
              <field-name>email</field-name>
            </cmp-field>
            <cmp-field>
              <description>Inscription Date</description>
              <field-name>inscriptionDate</field-name>
            </cmp-field>
            <cmp-field>
              <description>Last Visit Date</description>
              <field-name>lastVisitDate</field-name>
            </cmp-field>
              <primkey-field>login</primkey-field>
          </entity>
        </enterprise-beans>
      </ejb-jar>Can anyone tell me why I am getting this exception please?
    Thanks in advance,
    Julien Martin.

    Yes, I have set the PK. Actually this is happening when the number of columns are more than 63 columns. After I reduce the number of column, it is working fine.
    Is it the actual problem???
    fyi, I'm using jboss as the Application Server...

  • Primary key for an column consisting duplicates

    hi,
    ------->i have created a table and
    -------> i have a column consisting of 1000 records (but where i have duplicates)
    and now i want to create a primary key for the column
    how can i do it....

    Hi,
    You can find records which contains duplicate values for the table column using Oracle exceptions table. Please see a small demonstration:-
    SQL> create table test1(id number);
    Table created.
    SQL> insert into test1 values(&id);
    Enter value for id: 1
    old 1: insert into test1 values(&id)
    new 1: insert into test1 values(1)
    1 row created.
    SQL> /
    Enter value for id: 2
    old 1: insert into test1 values(&id)
    new 1: insert into test1 values(2)
    1 row created.
    SQL> /
    Enter value for id: 3
    old 1: insert into test1 values(&id)
    new 1: insert into test1 values(3)
    1 row created.
    SQL> /
    Enter value for id: 1
    old 1: insert into test1 values(&id)
    new 1: insert into test1 values(1)
    1 row created.
    SQL> /
    Enter value for id: 3
    old 1: insert into test1 values(&id)
    new 1: insert into test1 values(3)
    1 row created.
    SQL> /
    Enter value for id: 4
    old 1: insert into test1 values(&id)
    new 1: insert into test1 values(4)
    1 row created.
    SQL> /
    Enter value for id: 5
    old 1: insert into test1 values(&id)
    new 1: insert into test1 values(5)
    1 row created.
    SQL> commit;
    Commit complete.
    SQL> alter table test1 add constraint id_pk primary key(id);
    alter table test1 add constraint id_pk primary key(id)
    ERROR at line 1:
    ORA-02437: cannot validate (SYS.ID_PK) - primary key violated
    SQL> alter table test1 add constraint id_pk primary key(id) exceptions into exceptions;
    alter table test1 add constraint id_pk primary key(id) exceptions into exceptions
    ERROR at line 1:
    ORA-02445: Exceptions table not found
    SQL> @?/rdbms/admin/utlexcpt
    Table created.
    SQL> alter table test1 add constraint id_pk primary key(id) exceptions into exceptions;
    alter table test1 add constraint id_pk primary key(id) exceptions into exceptions
    ERROR at line 1:
    ORA-02437: cannot validate (SYS.ID_PK) - primary key violated
    SQL> desc exceptions
    Name Null? Type
    ROW_ID ROWID
    OWNER VARCHAR2(30)
    TABLE_NAME VARCHAR2(30)
    CONSTRAINT VARCHAR2(30)
    SQL> select * from exceptions;
    ROW_ID OWNER TABLE_NAME CONSTRAINT
    AAAc95AABAAA9EpAAD SYS TEST1 ID_PK
    AAAc95AABAAA9EpAAA SYS TEST1 ID_PK
    AAAc95AABAAA9EpAAE SYS TEST1 ID_PK
    AAAc95AABAAA9EpAAC SYS TEST1 ID_PK
    SQL> select * from test1 where rowid in(select row_id from exceptions);
    ID
    3
    1
    1
    3
    Thanks
    Edited by: rarain on May 28, 2013 12:10 PM

  • Primary Key With Four Column ,How to use that Column As Primary Key In Form

    Dear All,
    i have create composite Key as primary Key With Four Column .
    How can i use these column in Form With Report Page.
    How can i use these four Column as primary Key to Edit Record .
    How can i do this.
    Thanks
    Vedant

    wrap a view around your table with this bogus primary key. Use an instead of trigger to handle the inserts and updates. And then look at using surrogate keys to resolve these bad design issues...
    5 out of 4 people don't understand fractions.
    Thank you,
    Tony Miller
    Webster, TX

  • No matching unique or primary key for this column-list --error

    CREATE TABLE CUSTOMER(CUS_NUM NUMBER(10) PRIMARY KEY,CUS_NAME VARCHAR2(50),ADDRESS VARCHAR2(50));
    CREATE TABLE ITEM(ITEM_NUM NUMBER(10),ITEM_DESC VARCHAR2(50),TYPE VARCHAR2(50),ITEM_STATUS VARCHAR2(50),
    CONSTRAINT PK_ITEM PRIMARY KEY(ITEM_NUM,TYPE));
    CREATE TABLE ITEM_TYPE(TYPE VARCHAR2(50) PRIMARY KEY,TYPE_NAME VARCHAR2(50),SKU VARCHAR2(50),RATING VARCHAR2(50));
    CREATE TABLE ORDERS(ORDER_NUMBER NUMBER(10),CUS_NUM NUMBER(10),ITEM_NUM NUMBER(10),ORDER_POINT VARCHAR2(50),DISPATCH_POINT VARCHAR2(50),
    PRIORITY VARCHAR2(50),ORDER_STATUS VARCHAR2(50),
    CONSTRAINT PK_ORDERS PRIMARY KEY(ORDER_NUMBER,ITEM_NUM),
    CONSTRAINT FK1_ORDERS FOREIGN KEY (CUS_NUM) REFERENCES CUSTOMER(CUS_NUM),
    CONSTRAINT FK2_ORDERS FOREIGN KEY (ITEM_NUM) REFERENCES ITEM(ITEM_NUM));
    Hi,friends i created tables as above when i creating 'ORDERS' table the error will fir as "ORA-02270: no matching unique or primary key for this column-list".
    can any body solve this issue.
    Cheers,
    Sudhir reddy.

    For your own sanity, you should learn to format your code, or use a tool to do it for you. For the sanity of the forum members, you should preserve that code using the \ tagsCREATE TABLE CUSTOMER
    CUS_NUM NUMBER(10) PRIMARY KEY,
    CUS_NAME VARCHAR2(50),
    ADDRESS VARCHAR2(50)
    CREATE TABLE ITEM
    ITEM_NUM NUMBER(10),
    ITEM_DESC VARCHAR2(50),
    TYPE VARCHAR2(50),
    TYPE is a reserved word.  Call it ITEM_TYPEITEM_STATUS VARCHAR2(50),
    CONSTRAINT PK_ITEM PRIMARY KEY(ITEM_NUM,TYPE)
    CREATE TABLE ITEM_TYPE
    TYPE VARCHAR2(50) PRIMARY KEY,
    again, with the reserved word.TYPE_NAME VARCHAR2(50),
    SKU VARCHAR2(50),
    RATING VARCHAR2(50)
    CREATE TABLE ORDERS
    ORDER_NUMBER NUMBER(10),
    be consistent.  NUM or NUMBER.  Pick one and stick with it.CUS_NUM NUMBER(10),
    ITEM_NUM NUMBER(10),
    ORDER_POINT VARCHAR2(50),
    DISPATCH_POINT VARCHAR2(50),
    PRIORITY VARCHAR2(50),
    ORDER_STATUS VARCHAR2(50),
    CONSTRAINT PK_ORDERS PRIMARY KEY(ORDER_NUMBER,ITEM_NUM),
    CONSTRAINT FK1_ORDERS FOREIGN KEY (CUS_NUM) REFERENCES CUSTOMER(CUS_NUM),
    CONSTRAINT FK2_ORDERS FOREIGN KEY (ITEM_NUM) REFERENCES ITEM(ITEM_NUM)

  • How to create a primary key by 2 columns in sql??

    as title
    thx a lot.

    Chris,
    Well you have two basic ways. One is to issue an alter table command and define a PRIMARY KEY (also called a PK). The other is to create a UNIQUE index. The PRIMARY KEY creates an index anyway, though I prefer to just use unique indexes as you can specify more options in this manner. A table can only have 1 PK where as you can have multiple UNIQUE indexes. I also do not combine the PK definition directly into the CREATE TABLE command, as normally one would keep a seperate PK script, even if they did contain only unique indexes commands and not PK alter table commands.
    Anyway, below are the two methods of making a PK/Unique object for your table. The table name used here is T1 ...
    Method #1 (Primary Key)
    ALTER TABLE T1 DROP PRIMARY KEY;
    ALTER TABLE T1 ADD PRIMARY KEY
    (Column_1,Column_2, ...)
    STORAGE
         NEXT 512K
         MINEXTENTS 1
         MAXEXTENTS UNLIMITED
         PCTINCREASE 0
    Method #2 (preferred) : Unique Index
    DROP INDEX PK_T1;
    CREATE UNIQUE INDEX PK_T1 ON T1
    (Column_1,Column_2, ...)
    TABLESPACE INDX
    PCTFREE 10
    STORAGE
         INITIAL 1M
         NEXT 512K
         MINEXTENTS 1
         MAXEXTENTS UNLIMITED
         PCTINCREASE 0
    It's always best to define the storage clause for both the create table and it's indexes.
    Hope this helps ya,
    Tyler

  • Primary key is null in CMP ejbLoad()

    Using WebLogic 7.0 with Oracle 9i Lite.
    We're logging the values of the CMP fields in ejbLoad(). All of the
    CMP values look fine, except for the primary key value; it's always
    null. This means that Foo.getKey() (the CMP field that returns the
    primary key value) always returns null.
    Foo.getPrimaryKey() works as expected.
    This appears to be causing problems with CMR fields. The Collection
    we get from a "many" CMR field is populated with the correct number of
    elements, but if we try to remove one of them we're getting a "primary
    key cannot be null" exception from the container.
    Any insights?
    Richard A. Steele
    Paychex

    Here's some more information:
    We're able to successfully create entity beans; for example, we have beans OrganizationEJB
    and BusinessSiteEJB. There's a one-to-many relationship from OrganizationEJB to
    BusinessSiteEJB.
    Because of database integrity constraints, when we create a BusinessSite, we have
    to provide the Organization as a parameter to create(). This works fine--after calling
    create(), I see the new BusinessSite in the database.
    We can also do a findByPrimaryKey() on BusinessSite and retrieve the business site.
    However, if I do a getBusinessSites() on Organization, I get back a Collection, but:
    1. Sometimes it has just a single entry, even if we know there are multiple business
    sites for this organization. Sometimes, it has the right number of entries, but
    every one of them is identical.
    2. The primary key of the entries in the Collection are all null. In other words,
    if I do a getPrimaryKey() on the BusinessSite local interfaces in the collection,
    I get back null.
    3. If I try to delete any of the Business Sites in the collection, the container
    throws an exception that the primary key can't be null.
    Richard A. Steele
    Paychex

  • Primary key and WHO columns on EO

    We are trying to create a EO based on a database view. We do not have primary key and standard OA WHO columns but the OA framework is forcing us the have these columns. How do we go about this issue? Any suggestion will be appreciated.

    Oracle Apps mandates that you should have the Audit columns in the Applications tables.
    So you must have the 5 columns defined.
    I have created new tables for my application and need to populate them whenever user creates or modifies any row
    Jdeveloper/BC4J handles direct updates/inserts through default EO implementation, it would insert/update/delete from the base table via the EO, what is your qeustion then ? do you want to know how to perform DMLs in OA or something else ?
    Thanks
    Tapash

  • Does anyone know a way of making primary keys updatable in tabular forms

    Is there a way i can make my primary key updatable in a tabular form.
    I have two tables one called proposal details and one called student current details. Bascially you select one of your proposal details to become your current project this is done via the proposal id. The problem is that i cannot make this field editable in a tabular form. Does anyone know how i could make this primary key updatable?

    Hi Dan,
    One suggestion, perhaps, would be to base the tabular form on a View rather than directly off of the table. The view could include two instances of the proposal id field - the actual field and a second field called, say, PROPOSAL_ID_EDITABLE. You can then use an INSTEAD OF trigger on the view to update the actual table data with the value entered/selected in this second field.
    The reason why Apex will stop you updating primary keys is that it needs to be able to use these to get back to the original record to apply any changes. If you use a view instead, ensure that the primary key fields are not editable but allow the user to change a dummy field instead, the pk fields are available for Apex to get back to the data but the trigger will change the value instead.
    Regards
    Andy

  • Null in Composite Primary Key and "Primary keys must not contain null"

    Hello all.
    I'm a newbie concerning to JPA/EJB3, but I was wondering if toplinks doesn't support composite primary keys with null in some field (something perfectly right in any RDBMS).
    I used JDeveloper (I'm using Oracle 10g database and JDeveloper 10.1.3.2.) wizards to generate JPA classes and I checked out generated files (with annotations), so they should be right (by the way, other O-R mappings for my model are working right, but this one).
    I'm getting the next error:
    Exception Description: The primary key read from the row [DatabaseRecord(
         TSUBGRUPOSLDI.CD_GRUP => 01
         TSUBGRUPOSLDI.CD_SUBGRUP => null
         TSUBGRUPOSLDI.CG_POBL => 058
         TSUBGRUPOSLDI.CG_PROV => 28
         TSUBGRUPOSLDI.DSCR => Sanidad)] during the execution of the query was detected to be null. Primary keys must not contain null.
    Compound primary key is (CD_GRUP, CD_SUBGRUP). No foreign keys, no joins (only a NamedQuery: "select o from ..."). It's the simplest case!
    I checked out that everything runs ok if there's no "null" value in CD_SUBGRUP.
    After some research (this and other forums) I'm beginning to believe that it's not supported, but not sure.
    Am I doing sth wrong? If not, what is the reason to not support this? Will it be supported in the future?
    Thanks in advance.

    Null is a special value and in many databases is not comparable to another null value (hence the isNull operator) and may pose problems when used to uniquely identify an Entity. TopLink does not support null values within a composite PK. As the nullable column is most likely not designated as a PK within your database table (many databases do not allow this) I recommend updating the Entity PKs to match that of the database.
    --Gordon                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               

  • Primary key columns dropped with cascade constraint

    Hi,
    My developer dropped one column from table which was having primary key . (primary key on two columns now one column is there)
    he used SQL > alter table table_name drop columns cascade constraints.
    Now i want to enable the constraint. the constraint is not there. if i am creating the primary key with the existing single column alone.
    My question how do i know which was the dependency it had? (like foreign key / child tables it had?) and how to rebuild the relationship?
    Thanks
    --Raman                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       

    Hemangi,
    i am just wondering before dropping the column we had primary key. (as i mentioned earlier the primary key was created for two columns ) .
    now if i am re-building by just adding primary key to the existinc column alone i am facing this error.
    Let me see if there is any null or duplicate values in the column.
    Thanks
    --Raman                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   

  • The column in the table do not match an existing primary key

    I've got two tables tbl_Workshop and tbl_Material
    tbl_Workshop has columns workshopID, workshopTitle, materialID
    tbl_Material has materialID, name, workshopTitle
    when I'm trying to create a relationship between the workshopTitle of tbl1 and tbl2, it gives me an error that says the column in the table do not match an existing primary key.
    What could be the reason for this error and how to overcome it.
    ps. The datatypes and names of both the table's column match.

    Have you created primary key on workshopTitle column in tbl_Workshop
    You can add foreign key relationship from tbl_Material.workshopTitle
    to tbl_Workshop.workshopTitle
     only if latter is a primary key of the table.
    Please Mark This As Answer if it helps to solve the issue Visakh ---------------------------- http://visakhm.blogspot.com/ https://www.facebook.com/VmBlogs

  • Maximum number of column in Composite Primary Key

    Hi
    I have read that composite primary key can contain maximum of 32 columns (Oracle 9i).
    However I am able to create a primary key on 33 columns. It fails to create primary key on 34 columns. Below are the queries.
    DROP TABLE XYZ;
    CREATE TABLE XYZ
    ( N1 NUMBER
    ,N2 NUMBER
    ,N3 NUMBER
    ,N4 NUMBER
    ,N5 NUMBER
    ,N6 NUMBER
    ,N7 NUMBER
    ,N8 NUMBER
    ,N9 NUMBER
    ,N10 NUMBER
    ,N11 NUMBER
    ,N12 NUMBER
    ,N13 NUMBER
    ,N14 NUMBER
    ,N15 NUMBER
    ,N16 NUMBER
    ,N17 NUMBER
    ,N18 NUMBER
    ,N19 NUMBER
    ,N20 NUMBER
    ,N21 NUMBER
    ,N22 NUMBER
    ,N23 NUMBER
    ,N24 NUMBER
    ,N25 NUMBER
    ,N26 NUMBER
    ,N27 NUMBER
    ,N28 NUMBER
    ,N29 NUMBER
    ,N30 NUMBER
    ,N31 NUMBER
    ,N32 NUMBER
    ,N33 NUMBER
    ,N34 NUMBER
    ,N35 NUMBER
    ,N36 NUMBER
    ,N37 NUMBER
    ,N38 NUMBER
    ,N39 NUMBER
    ,N40 NUMBER
    ,N41 NUMBER
    ,N42 NUMBER
    ,N43 NUMBER
    ,N44 NUMBER
    ,N45 NUMBER
    ,N46 NUMBER
    ,N47 NUMBER
    ,N48 NUMBER
    ,N49 NUMBER
    ,N50 NUMBER
    ALTER TABLE XYZ ADD CONSTRAINT XYZ_PK PRIMARY KEY
    ( N1,N2,N3,N4,N5,N6,N7,N8,N9,N10,N11,N12,N13,N14
    ,N15,N16,N17,N18,N19,N20,N21,N22,N23,N24,N25,N26
    ,N27,N28,N29,N30,N31,N32,N33,N34);
    ALTER TABLE XYZ ADD CONSTRAINT XYZ_PK PRIMARY KEY
    ( N1,N2,N3,N4,N5,N6,N7,N8,N9,N10,N11,N12,N13,N14
    ,N15,N16,N17,N18,N19,N20,N21,N22,N23,N24,N25,N26
    ,N27,N28,N29,N30,N31,N32,N33);
    Can someone let me know the lmit of maximum no. of columns in Primary Key?
    Regards
    Arun

    SQL> select * from v$version;
    BANNER                                                                         
    Oracle9i Enterprise Edition Release 9.2.0.1.0 - Production                     
    PL/SQL Release 9.2.0.1.0 - Production                                          
    CORE     9.2.0.1.0     Production                                                      
    TNS for 32-bit Windows: Version 9.2.0.1.0 - Production                         
    NLSRTL Version 9.2.0.1.0 - Production                                          
    SQL> ALTER TABLE XYZ ADD CONSTRAINT XYZ_PK PRIMARY KEY
      2  ( N1,N2,N3,N4,N5,N6,N7,N8,N9,N10,N11,N12,N13,N14
      3  ,N15,N16,N17,N18,N19,N20,N21,N22,N23,N24,N25,N26
      4  ,N27,N28,N29,N30,N31,N32,N33);
    Table altered.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       

Maybe you are looking for

  • Problem beim installieren von Adobe Acrobat X Pro/Problem when installing Adobe Acrobat X Pro

    Hallo, ich wollte Adobe Acrobat von 8 Pro auf X Pro updaten. Dabei kommt jedoch die Fehlermeldung, dass die Systemanforderungen nicht gegeben sind. Nun sind die Systemanforderungen aber gegeben. OS: Windows XP Professional SP3 (32bit) 3 Gb Arbeitsspe

  • Ejb wl5.1 client talking to ejb wl6.1 server?

    I have a session ejb running in wl 5.1 that must act as a client of a wl6.1 ejb (wl 6.1 running on another host). Since the RMI layer is incompatible between 5.1 and 6.1 I must jump through some hoops to get this to work. I've considered packaging th

  • Use of classes in com.sun.tools.doclets

    Hello -- What is the best practice recommendation wrt using the classes in com.sun.tools.doclets -- particularly with the planned refactoring? I'm writing a doclet that doesn't subclass, say, the standard doclet. There are obviously several very usef

  • Why virtual interfaces added to ManagementOS not visible to Cluster service?

    Hello All,  I"m starting this new thread since the one before is answered by our friend Udo. My problem in short is following. Diagram will be enough to explain what I'm trying to achieve. I've setup this lab to learn Hyper-V clustering with 2 nodes.

  • Error code -5000

    error code -5000 comes on screen when am am trying to install a screen saver does anyone know what this code is and how to solve the problem