假设我有这样的数据模型:
CREATE TABLE users (
id UUID primary key,
username text,
..10 more columns..
)
CREATE TABLE posts(...)
CREATE TABLE comments (
id UUID primary key,
post_id,
user_id UUID,
username text,
comment text,
..etc..
)
comments
表包含用户发布的所有注释,它还包含用户ID和名称,因此我们可以使用一个查询检索我们需要显示的所有数据。
现在,假设数据库包含100.000条评论,用户决定更改其用户名。
我是否真的应该通过100.000更新来更改所有评论中的用户名?
答案 0 :(得分:1)
是的,您必须更新所有评论。这是经典的规范化与非规范化(一致性与绩效)的困境。
所以你必须决定是否要在评论中存储用户名:大量额外的读取(可以缓存)或者一些繁琐的批量更新(可能 IMapController mapController = map.getController();
for(int i =0 ; i<overlay.getMyPositionList().size();i++)
{
Marker marker = new Marker(map);
marker.setPosition(overlay.getMyPositionList().get(i));
map.getOverlays().add(marker);
}
mapController.setCenter(overlay.getMyPositionList().get(0));
map.invalidate();
更改不常见?)。
或者您可以将其保留原样,并说它是数据保留政策:)
答案 1 :(得分:1)
查看KillrVideo参考应用here。
在实际运行的应用程序中有许多数据模型示例,其中包括注释系统。