Sequelizejs HasMany三元关系

时间:2014-07-23 19:13:06

标签: node.js relationship has-many sequelize.js ternary

我想在Sequelize中建立三元关系,如下图所示

图像 https://www.dropbox.com/s/v8bgsir2qqw6ccv/relationship%20.jpg

如果我在sequelize中应用此代码

A.hasMany(B);
A.hasMany(C);
B.hasMany(C);
C.hasMany(A);
C.hasMany(B);

生成的SQL代码如下

CREATE TABLE IF NOT EXISTS `a_b_` (
  PRIMARY KEY (`BId`,`AId`)
) 
CREATE TABLE IF NOT EXISTS `a_c_` (
  `CId` int(11) NOT NULL DEFAULT '0',
  `AId` int(11) NOT NULL DEFAULT '0',
  PRIMARY KEY (`CId`,`AId`)
) 
CREATE TABLE IF NOT EXISTS `b_c_` (
  PRIMARY KEY (`CId`,`BId`)
)

但结果应该是

 CREATE TABLE IF NOT EXISTS `a_b_` (
  PRIMARY KEY (`BId`,`AId`)
) 
CREATE TABLE IF NOT EXISTS `a_b_c_` (
  `AId` int(11) NOT NULL DEFAULT '0',
  `BId` int(11) NOT NULL DEFAULT '0', 
  `CId` int(11) NOT NULL DEFAULT '0',

  PRIMARY KEY (`AId`,`BId`, 'CId')
) 

我无法创建一个带有pk的表(AId,BId,CId)有人可以指示我要走哪条路或我能做什么。

非常感谢。

0 个答案:

没有答案