首先,我检查了很多问题并搜索了很多问题,但没有一个问题解决了我的问题。
我正在使用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.id
和item.locationId
之间创建一个外键。
Workbench GUI不允许我选择复选框......
从这张图片中可以看出,我无法选择复选框或选择组合框值..
编辑:我可以通过查询来管理它,但是在某些项目中有很多表,不想用查询来完成所有这些...是否有一些我缺少的东西工作台?
提前致谢。
答案 0 :(得分:1)
回答这个问题可能有点迟,但是, 最近,我在Workbench GUI中遇到了这个问题,它是由DataType的差异引起的。
确保两个字段具有相同的DataType似乎可以解决问题。
希望这有帮助。
答案 1 :(得分:1)
正如 user4115463 所说,这是由DataType的差异引起的。确保两个密钥具有完全相同的数据类型:
INT
和INT(10)
不相同)选择一个复选框时,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);
}