在MySQL表行中存储JSON数据可以接受吗?我需要在mysql数据库中存储数组。问题是,我不知道每个用户需要多少列。因此,我考虑将JSON存储在一个名为array
的行中作为示例。这是最好的方法吗?
编辑:
另外,我使用text
作为表列类型。
发布于 2013-03-13 20:04:52
是的,使用mysql作为键值存储是一个非常好的想法,事实上facebook确实有一些用途。
CREATE TABLE `json` (
`id` int(11) unsigned NOT NULL AUTO_INCREMENT,
`data` blob NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
上面的表结构会让你走得更远。它很容易进行分片或集群。
编辑:这里的重点是使用PHP、Ruby等来处理json/data。你做SELECT ...
,做你的编辑,然后INSERT ... ON DUPLICATE KEY UPDATE ...
。
发布于 2013-03-13 20:06:50
在关系数据库字段中存储多个数据通常是错误的。可以考虑这样的情况,它是可以接受的,但不能用于存储整个用户。
如果使用关系数据库结构还不够,您可能需要考虑使用NoSQL数据库而不是MySQL。
发布于 2013-03-13 20:03:24
这不是问题。mySQL已经可以处理其文本字段中的大多数括号和时髦字符。
https://stackoverflow.com/questions/15395287
复制