我应该如何在 SET 列中插入数字?我知道对于 ENUM,建议不要在 ENUM 列中存储数字,并且数字应该用 '' 插入。SET 列是否相同?应该用''插入数字吗?像 '1','2' 或者可以像这样插入它: 1, 2 ?
问问题
65 次
3 回答
1
您使用 SET 值名称插入并将它们括在单引号中并用逗号分隔它们。
来自这里的简约示例:
CREATE TABLE myset (col SET('a', 'b', 'c', 'd'));
INSERT INTO myset (col) VALUES ('a,d,d,s');
于 2013-02-07T09:22:53.757 回答
0
首先,不要使用 MySQL 的 SET 和 ENUM 列类型。
其次,您的集合定义确实不应该包含数字。'一' 是可以的,'1' 会非常混乱。
第三,如果你插入像1
,2
等这样的数字,那么它实际上会插入集合的第 n 个成员而不是那个数字,而如果你插入'1'
它将插入那个成员。当您有一个按该顺序包含以下成员的集合时,差异就会出现:'foo', 'bar', '1', '2'
- 如果您插入'1'
它将与插入 a 相同3
,但如果您插入 a1
它将与'foo'
.
底线:不要使用 SET 和 ENUM 列类型。
于 2013-02-07T09:23:45.950 回答
-1
数字应该像 1 ,2 ,3 这样插入。如果您放入像“1”,“2”这样的单引号,这被认为是字符。
于 2013-02-07T09:24:27.057 回答