项目里有一系列的配置信息,
比如设置用户注册时候的字段,有用户名,密码,邮箱,电话,地区等。
现在需要配置一条信息,确定哪些字段在注册的时候是必填的。
配置信息结构类似 username:true,password:true 这样(key:value)的形式
这样的一系列配置信息系统中永远有且只有一条
如何设计表结构更合理?
我个人不大喜欢以 key 为表头以 value 值存单条字段的方法,因为感觉这样在系统扩展字段增多的情况下会影响原有代码
如果单纯存 key : value 段的话更新操作可能就要一次性更新多条数据。
或者将 key:value 对做成 json 字符串存进库里
有没有什么更好的方法
1
vivisidea 2015-11-03 18:51:27 +08:00 1
就两个字段吧
key, value value 存成字符串 例如 key value register.restrict {"username": true, "password": true} 具体 value 交给程序去解析 这个表就用来存所有的系统配置 |
2
raofr 2015-11-03 19:13:36 +08:00 1
你的库是传统关系型数据库的话,而且要单条存的话, json 是一条路;
如果觉得 json 重的话,就自定义格式用“ key1:value1,key2:value2,key3:value3 ”来存到一个字段,然后读数据库的时候,用 split 来解决。 这里库如果是指 NoSQL ,比如 mongodb 的话,就简单了,天然支持 json 。 |