为什么在多态关联中没有外键,例如下面表示为Rails模型的外键?
class Comment < ActiveRecord::Base
belongs_to :commentable, :polymorphic => true
end
class Article < ActiveRecord::Base
has_many :comments, :as => :commentable
end
class Photo < ActiveRecord::Base
has_many :comments, :as => :commentable
#...
end
class Event < ActiveRecord::Base
has_many :comments, :as => :commentable
end
Run Code Online (Sandbox Code Playgroud) database ruby-on-rails foreign-key-relationship polymorphic-associations
我想为以下场景设置表约束,我不知道如何做到这一点,或者甚至可能在SQL Server 2005中.
我有三张桌子A,B,C.C是B的子级.B将有一个可选的外键(可能为null)引用A.出于性能原因,我还希望表C对表A具有相同的外键引用.表C上的约束应该是C必须引用其父级(B),并且还具有与其父级相同的外键引用.
任何人都有任何想法如何做到这一点?
sql database-design sql-server-2005 constraints foreign-key-relationship