2013-06-28 67 views
1

在尝试使用创建表以下SQL错误,我尝试创建一个字段类型龙主键

CREATE TABLE person(id INTEGER,r_id LONG,p_name TEXT,p_age INTEGER, 
         p_address TEXT,p_mobile LONG,PRIMARY KEY(r_id)); 

我得到一个错误:

Error Code: 1170 
BLOB/TEXT column 'r_id' used in key specification without a key length 

什么错误是?

+3

不相关的问题,但你可能要重新考虑你的决定来存储一个人的年龄。它随着时间而变化。 –

+0

@DanBracuk谢谢:D – saplingPro

回答

4

您可能想要bigint而不是LONG这是一个长文本数据类型。

CREATE TABLE person 
(
    id INTEGER, 
    r_id BIGINT, 
    p_name TEXT, 
    p_age INTEGER, 
    p_address TEXT, 
    p_mobile BIGINT, 
    PRIMARY KEY(r_id) 
); 

MySQL data types

+0

java中bigint的对应关系是什么?这不是'长'。我测试了一个错误 – saplingPro

+0

它应该使用'long'。见[这里](http://dev.mysql.com/doc/refman/5.1/en/connector-j-reference-type-conversions.html)。你使用什么连接器? –

+0

yeah.okay。有一个错误 – saplingPro

相关问题