可能重复:
Is it possible to apply primary key on the text fields in android database
我已经做过这样的强制关闭。
private static final String CREATE_NEWCUSTOMER = "create table newcustomer (_id integer primary key autoincrement, "
+ "cname text primary key, date text , " + "caddress text);";
它适用于整数,如果有任何想法请帮助我。
答案 0 :(得分:7)
您不会在SQLite中创建类似的主键。我没有测试过以下内容,但根据文档它应该可以工作:
private static final String CREATE_NEWCUSTOMER = "create table newcustomer (_id integer autoincrement, cname text, date text, caddress text, PRIMARY KEY(_id, cname));";
答案 1 :(得分:3)
您可以毫无问题地将主键属性添加到文本中。在上面的查询中存在一个主要问题。如果主键由多个列组成,则无法应用属性“AutoIncrement”。
这是一个示例查询,它创建一个包含主键的表,该主键包含在两列中,一列具有Integer数据类型,另一列具有文本PRIMARY KEY ("col_1", "col_2")
。
CREATE TABLE "Table_Name" ("col_1" INTEGER NOT NULL , "col_2" TEXT NOT NULL , "col_3" TEXT, "col_4" VARCHAR, PRIMARY KEY ("col_1", "col_2"))
答案 2 :(得分:-3)
试试这个:
final String CREATE_TABLE_JobTime =
"CREATE TABLE jt (q_id INTEGER PRIMARY KEY AUTOINCREMENT,description VARCHAR);";
db.execSQL(CREATE_TABLE_JobTime);