【问题标题】:Foreign key in sqlitesqlite中的外键
【发布时间】:2012-12-12 16:00:27
【问题描述】:

我正在尝试转换从 mysql 转储的表。以下是我从 mysql 获得的用于创建表的代码:

CREATE TABLE "tbl_profession_attributes" (
"id" bigint(20) NOT NULL,
"tbl_profession_attribute_id" bigint(20) DEFAULT '0',
"code" varchar(10) NOT NULL,
"name" varchar(100) NOT NULL,
"keyword" text NOT NULL,
"tbl_profession_list_id" bigint(20) NOT NULL,
PRIMARY KEY ("id"),
KEY "tbl_passion_attribute_id" ("tbl_profession_attribute_id"),
KEY "tbl_passion_list_id" ("tbl_profession_list_id")
);

当我对 sqlite 运行此查询时,我收到以下错误:

Query Error: near "KEY": syntax error Unable to execute statement

谁能帮我解决这个问题。

非常感谢任何帮助。

【问题讨论】:

    标签: sqlite


    【解决方案1】:

    首先,MySQL 关键字KEYINDEX 的同义词。所以这根本与外键无关。

    其次,SQLite 不支持在 CREATE TABLE 语句中创建非主索引。您应该为创建索引指定单独的语句,例如:

    CREATE INDEX tbl_passion_attribute_id_idx
    ON tbl_profession_attributes(tbl_profession_attribute_id)
    

    【讨论】:

    • +1 表示INDEX 备注。我相信 OP 知道原始代码的作用...
    猜你喜欢
    • 1970-01-01
    • 2012-07-17
    • 1970-01-01
    • 1970-01-01
    • 2010-11-10
    • 2013-07-26
    • 2011-05-01
    • 2013-05-03
    相关资源
    最近更新 更多