简单处理就全部删掉再写一次,复杂处理就是把旧的数据取出来,跟新的数据对比,如果旧的有,新的没有,就删除,如果新的有,旧的没有,就新增,都有,就不用处理。
@I,Robot:恩,就简单处理了,全部删除,再添加,只不过对多个多值属性加了个修改掩码,业务层调用时,如果只修改爱好,就传递UpdateMask.Hobby,防止把联系人,电话这些属性也一起修改了。
并不难解决啊。 有一对多的 数据表。
是这样,只是说修改用户信息的时候,这些多值属性都要在“多”那张表里删除,再添加,这样会不会很不好,可能我只需要修改爱好,而不用修改联系人,电话等
每一项以一种数据格式存进去就行, 联系人 [ 张三,李四,王五] 爱好 [打球,跑步,唱歌 ] …… ,如果这些选项是可变的不是填写的建议存取选项ID比较好。
js拼接即可,以特定的方式存进去,以特定的方式截取取出来用就行,或者可以存成Json的格式,这样序列化取出来用也是很方便的。
这些多值属性会做查询条件和统计用,这种方式不好吧
@旅行中: 那目前依在下愚见,只能以拼接ID的方式存取比较好点额,查询的时候只能是按 爱好串儿是否contains ,输入关键词匹配的ID进行查询统计呢!
@贫民窟大侠: 我最开始也是分隔符分开,但后面需求改了,需要做关联查询和统计,而且多值属性每一项是复合属性了。。。。
@旅行中: 知道这个需求我一开始是拒绝的!一起等大神出现给出建议信的解决方案。
可以啊,都省了修改流程了