小编wil*_*lpr的帖子

SQL-聊天数据库架构以删除一侧或双方的对话

我正在设计一个具有以下要求的聊天数据库:

  • 仅私人消息,从A到B。没有团体或房间。
  • 当用户A向B发送消息时,如果用户A删除对话,则用户B仍然可以查看对话,直到用户B删除对话为止。
  • 信息将无法单独删除。仅能删除完整的历史对话。

现在我有了这个:

  • 当用户A向用户B发送消息时,将创建一个带有ID的消息寄存器。这将是对话表的外键。
  • 在对话表中,将为相同的消息ID创建两个寄存器。一个用于发送消息的用户,另一个用于接收消息的用户。每个寄存器都有一个称为in-out的字段,在其中指定是否发送或接收消息。例:

/*
conversation_table                              messages_table
+--------------------------------------------+  +----------------------------------------+
| user_id | participant_id | in-out | msg_id |  | msg_id |            body               |
+--------------------------------------------+  +----------------------------------------+
|    A    |        B       |    0   |   101  |  |   101  | Hello B, what's up            |
|    B    |        A       |    1   |   101  |  |   102  | Hey A, here in stackoverflow  |
|    B    |        A       |    0   |   102  |  |   103  | That's nice B, and what's …
Run Code Online (Sandbox Code Playgroud)

sql chat

7
推荐指数
1
解决办法
1135
查看次数

MySQL - 如何在分页前计算行数?

我正在创建一个搜索页面来查找用户.我有查询查找它们,实际上我可以用"LIMIT startRow,numberRows"进行分页.但是,如何计算在进行分页之前找到的"寄存器"总数?我想在我的搜索页面添加搜索中找到的用户数.

我需要这样的东西:"第1页,共100页".我实际上我有"第1页",但我不知道如何计算分页前的结果总数.

¿也许可能需要用"SELECT COUNT(*)"执行额外的查询?¿是否有另一种方法可以在分页前计算以避免另一个查询?

我使用两个SQL查询,一个用于单个字,另一个用于多字:

基本sql查询(用于单字和多字搜索):

"SELECT * FROM accounts AS A INNER JOIN profiles AS P ON A.account_id = P.account_id "
Run Code Online (Sandbox Code Playgroud)

单字条件:

"WHERE A.username LIKE ? OR P.name LIKE ? OR P.name LIKE ? OR P.surname LIKE ? OR P.surname LIKE ? LIMIT ?,?"
Run Code Online (Sandbox Code Playgroud)

多字条件:

"WHERE CONCAT(P.name, ' ', P.surname) LIKE ? LIMIT ?,?"
Run Code Online (Sandbox Code Playgroud)

非常感谢.

java mysql pagination rows count

5
推荐指数
1
解决办法
1474
查看次数

spring 模型 addObject(Object attributeName) 的目的是什么?

在spring mvc中,创建ModelAndView的时候有个方法叫addObject(Object attributeName)single parameter,不明白怎么用。我也看到了model.addAllObjects(Map<String, ?> object)

我怎样才能在jsp中获得那个地图?或者这些方法的目的是什么?我只知道怎么利用,model.addObject("car", new Car())因为就像定义servlet参数一样。我在春天找到了这个信息,但我真的不明白。

Spring addObject 和 addAllObjects

spring jsp spring-mvc

1
推荐指数
1
解决办法
3874
查看次数

标签 统计

chat ×1

count ×1

java ×1

jsp ×1

mysql ×1

pagination ×1

rows ×1

spring ×1

spring-mvc ×1

sql ×1