我应该如何在SET列中插入数字?我知道对于ENUM,建议不要在ENUM列中存储数字,并且数字应该插入''。 SET列是否相同?应该用''插入数字?像'1','2'或插入它可以很好:1,2,
答案 0 :(得分:1)
使用SET值名称插入并将它们用单引号括起来并用逗号分隔。
来自here的简约示例:
CREATE TABLE myset (col SET('a', 'b', 'c', 'd'));
INSERT INTO myset (col) VALUES ('a,d,d,s');
答案 1 :(得分:0)
首先,不要使用MySQL的SET和ENUM列类型。
其次,您的设置定义实际上不应包含数字。 “一个人”没关系,“1”会非常混乱。
第三,如果你插入1
,2
等数字,那么它实际上会插入集合的第n个成员而不是那个数字,而如果你插入'1'
它会插入该成员。如果您按顺序拥有以下成员的集合,则会出现差异:'foo', 'bar', '1', '2'
- 如果您插入'1'
,则与插入3
相同,但如果您插入1
'foo'
它与{{1}}相同。
底线:不要使用SET和ENUM列类型。
答案 2 :(得分:-1)
数字应该插入1,2,3。 如果你把单引号像'1','2'那样考虑为字符。