比如说,我现在创建了三张表,一张products表,有个字段productsID为主键,一张Orders表OrdersID为主键,
一张OrderDetails 有个ProdustID
现在问题来了,
我要在OrderDetails表中引用Products表主键(ProductID), OrderID、
ProductID联合做主键应该怎么写??

解决方案 »

  1.   


    alter table OrderDetails add constraint constraint_name primary key(OrdersID,ProdustID);
      

  2.   

    create table products (productId int primary key);create table orders (orderId int primary key);create table orderDetails(productId int, orderId int,
      foreign key (productId) references products(productId),
      foreign key (orderId) references orders(orderId),
      primary key (productId, orderId));
      

  3.   

    1楼那个似乎不好使啊
    SQL> 
    SQL> alter table orderDetails add constraint constraint_name primary key(orderID,productID);
    alter table orderDetails add constraint constraint_name primary key(orderID,productID)
                                                            *
    第 1 行出现错误:
    ORA-02260: 表只能具有一个主键
      

  4.   

    你要先把orderDetails表中建的那个主键orderID删除alter table orderDetails drop constraint orderID
    然后再创建主键alter table orderDetails add constraint constraint_name primary key(orderID,productID);