Mysql Workbench无法选择外键

时间:2015-08-29 08:10:33

标签: mysql mysql-workbench mysql-error-1064

首先,我检查了很多问题并搜索了很多问题,但没有一个问题解决了我的问题。

我正在使用Mysql Workbench 6.3创建表格。我只使用gui而不是单个查询创建它们。之后我尝试为int(11)列创建一些外键,但GUI不允许我这样做。

这是我的Show Create Table 'tableName'

CREATE TABLE `item` (
  `id` int(11) NOT NULL,
  `description` varchar(300) NOT NULL,
  `maker` varchar(200) NOT NULL,
  `model` varchar(200) NOT NULL,
  `condition` varchar(200) NOT NULL,
  `locationId` int(11) NOT NULL,
  `categoryId` int(11) NOT NULL,
  `userId` int(11) NOT NULL,
  `lendTermsId` int(11) NOT NULL,
  `itemOptionsId` int(11) NOT NULL,
  PRIMARY KEY (`id`),
  UNIQUE KEY `id_UNIQUE` (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8

另一个;

CREATE TABLE `location` (
  `id` int(11) NOT NULL,
  `type` varchar(200) NOT NULL,
  `coordinateLat` varchar(200) NOT NULL,
  `coordinateLong` varchar(45) NOT NULL,
  PRIMARY KEY (`id`),
  UNIQUE KEY `id_UNIQUE` (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8

我正在尝试在location.iditem.locationId之间创建一个外键。 Workbench GUI不允许我选择复选框......

enter image description here

从这张图片中可以看出,我无法选择复选框或选择组合框值..

编辑:我可以通过查询来管理它,但是在某些项目中有很多表,不想用查询来完成所有这些...是否有一些我缺少的东西工作台?

提前致谢。

3 个答案:

答案 0 :(得分:1)

回答这个问题可能有点迟,但是, 最近,我在Workbench GUI中遇到了这个问题,它是由DataType的差异引起的。

确保两个字段具有相同的DataType似乎可以解决问题。

希望这有帮助。

答案 1 :(得分:1)

正如 user4115463 所说,这是由DataType的差异引起的。确保两个密钥具有完全相同的数据类型:

  • 数据类型字段应包含完全相同的字符串(INTINT(10) 相同)
  • B(Is binary)复选框应匹配
  • UN(无符号)复选框应匹配

选择一个复选框时,MySQL Workbench会尝试使用匹配列填充复选框旁边的下拉列表,如果找不到任何匹配的列,则会决定默认忽略复选框上的点击。

答案 2 :(得分:0)

尝试以下Alt语句

Cursor c;
Object val;
int type = c.getType(i);
if(type == Cursor.FIELD_TYPE_BLOB){
    val = c.getBlob(i);
}else if(type == Cursor.FIELD_TYPE_FLOAT){
    val = c.getFloat(i);
}else if(type == Cursor.FIELD_TYPE_INTEGER){
    val = c.getInt(i);
}else if(type == Cursor.FIELD_TYPE_LONG){ //this here is the problem. "Cursor.FIELD_TYPE_LONG" does not exists
    val = c.getLong(i);
} else if(type == Cursor.FIELD_TYPE_NULL){
    val = null;
}else if(type == Cursor.FIELD_TYPE_STRING){
    val = c.getString(i);
}

我已通过GUI测试检查此截图 enter image description here