2012-08-01 85 views
0

我使用類創建表:OrmLite多餘領域創造

public class Category { 
    public final static String CATEGORY_TITLE_FIELD_NAME = "title"; 
    @SerializedName("id") 
    @DatabaseField(id = true) 
    int id; 

    @SerializedName("title") 
    @DatabaseField(dataType = DataType.STRING, columnName = CATEGORY_TITLE_FIELD_NAME) 
    String title; 

    // need for ORMlite 
    public Category() {} 

    public Category (int id, String title) { 
     this.id = id; 
     this.title = title; 
    } 
} 

而得到這樣的消息:

11月8日至1日:28:17.269:I/TableUtils(26960):執行create table語句改爲1行:CREATE TABLE levelstitle VARCHAR,id INTEGER,PRIMARY KEY(id))

這是關於在我的桌子是3場?或有2個字段 - '標題'和'ID'...如果有3個字段告訴我爲什麼請..

回答

0

這是關於在我的表中是3場?或者還有2場 - 「標題」和「身份證」 ......如果有3個字段告訴我爲什麼,請..

我假設你正在談論生成的SQL:

CREATE TABLE水平(標題VARCHAR,ID整數,PRIMARY KEY(ID))

3字段被限定在那裏。有兩個字段(titleid)和PRIMARY KEY指定用於Sqlite。 Sqlite使用PRIMARY KEY SQL來定義哪個字段應被索引爲該行的標識符。有關更多信息,請參閱Sqlite documentation

0

這是關於在我的表中是3字段?

你的表有兩列,你會覺得有3列嗎? 如果您分析SQL語句:

CREATE TABLE水平(標題VARCHAR,ID整數,PRIMARY KEY(ID))

你會看到有兩列,titleid(這是也是主鍵)。

如果您需要其他答案,請更改您的問題。

+0

不,謝謝... – 2012-08-01 09:20:53

+0

你是混亂的行和列@dadu?你在答案中使用單詞行。 – Gray 2012-08-01 13:28:16

0

當我得到這樣一個消息

08-01 11:28:17.269: I/TableUtils(26960): executed create table statement changed 1 rows: CREATE TABLE levels (title VARCHAR , id INTEGER , PRIMARY KEY (id)) 

,這意味着2列創建,而不是3.由於Gray

+0

我不明白這對後代有什麼幫助,似乎是我的信息的重複。我會刪除它。 – Gray 2012-08-14 13:41:41