sql server没有枚举类型,要把mysql的枚举转换过来,可以怎么做?
type enum('0','1') NOT NULL DEFAULT '0' COMMENT '1:直辖市',
sql server没有枚举类型,要把mysql的枚举转换过来,可以怎么做?
type enum('0','1') NOT NULL DEFAULT '0' COMMENT '1:直辖市',
该回复引自免费微信小程序-皆我百晓生:
在SQL Server中,可以使用以下两种方法来模拟MySQL的枚举类型:
CREATE TABLE your_table (
city_type CHAR(1) NOT NULL DEFAULT '0' CHECK (city_type IN ('0', '1'))
);
CREATE TABLE city_types (
id INT PRIMARY KEY,
name VARCHAR(50)
);
INSERT INTO city_types (id, name) VALUES (0, '直辖市');
INSERT INTO city_types (id, name) VALUES (1, '非直辖市');
CREATE TABLE your_table (
id INT PRIMARY KEY,
city_type_id INT,
FOREIGN KEY (city_type_id) REFERENCES city_types(id)
);
这样,你可以在"your_table"表中使用"city_type_id"列来表示枚举值,通过外键关联到"city_types"表中的相应枚举值。
无论使用哪种方法,都可以实现类似于MySQL的枚举类型的功能。