关于外键引用的问题我

关于外键引用的问题我

create table orders(
       id     int        not null      auto_increment,
       name    varchar(100)    not null,
primary key (id)
);

create table line_items
       id      int        not null      auto_increment,
       order_id   int        not null,
       constraint   fk_items_order  foreign key (order_id)        references orders(id),
primary key (id)
):

这个外键引用时 fk_items_order的命令有一定规定的么?

我看的书是agile php?name=rails" onclick="tagshow(event)" class="t_tag">rails的第一版,我知道第二版开始用migrate来生成表,但我还是想知道如果自己生成表,要如何做?
在rails中是不需要强制指明fk的。直接在line_items中建个order_id即可。

[Copy to clipboard] [ - ]
引用:
原帖由 martin 于 2007-10-15 17:02 发表
在rails中是不需要强制指明fk的。直接在line_items中建个order_id即可。

class LineItem< ActiveRecord::Base
 belongs_to :order
end


item.order 会自动通过order_id去关联order的。
constraint   fk_items_order  foreign key (order_id)        references orders(id),

整句都可以去掉?
那为什么第一版书中,要指定呢?
不知道为什么,可能Dave Thomas老大写这个部分的时候考虑到利用数据库自身的完整性约束来处理吧。我猜的。