我需要將表格從MySQL轉換爲SQLite,但我無法弄清楚如何轉換枚舉字段,因爲我在SQLite中找不到ENUM
類型。如何在SQLite中創建ENUM類型?
上述領域是下表中pType
:
CREATE TABLE `prices` (
`id` INT(11) NOT NULL AUTO_INCREMENT,
`pName` VARCHAR(100) NOT NULL DEFAULT '',
`pType` ENUM('M','R','H') NOT NULL DEFAULT 'M',
`pField` VARCHAR(50) NULL DEFAULT NULL,
`pFieldExt` VARCHAR(50) NULL DEFAULT NULL,
`cmp_id` INT(11) NOT NULL DEFAULT '0',
PRIMARY KEY (`id`)
)
ENGINE=MyISAM
ROW_FORMAT=DEFAULT
我需要的只有三個值的字段以供用戶選擇,我想強制執行,在DB,不只是在我應用。
其實「自定義枚舉表」是用真實的枚舉 – 2011-03-14 15:55:05
爲什麼不使用CHECK()約束,只允許三個可能的字符串更清潔的設計? – mateusza 2013-06-19 23:31:04
>只允許三個可能的字符串:由於存儲字符串? – 2014-05-09 20:18:57