【发布时间】:2021-10-21 10:04:10
【问题描述】:
我创建了一个带有本地数据库的聊天应用程序来存储用户的消息。但是当我注销并使用其他用户登录时,旧的消息数据仍然存在。我不想在用户重新登录的情况下清除该数据,因为这些消息未在服务器中备份。那么如何为其他用户创建不同的数据库呢?
_createChatTable(Database db) async {
await db
.execute(
"""CREATE TABLE chats(
id TEXT PRIMARY KEY,
username TEXT NOT NULL,
unread INTEGER,
message_type TEXT,
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL
)""",
)
.then((_) => print('creating table chats...'))
.catchError((e) => print('error creating chats table: $e'));
}
这是当前创建数据库的函数。
【问题讨论】:
-
使用相同的数据库,但使用添加字段 login_user_id 来保存消息并始终通过使用 login_user_id 检查条件来过滤消息。永远不要清除数据库