我想在SQL Server数据库中存储朋友的每个用户列表。 我很困惑
当我查询时,如何获得单个用户的所有朋友?
答案 0 :(得分:2)
当我们说SQL Server时,我们说的是RDBMS。
然后有normalization INF,2NF和3rdNF ......,这是如何规范用户及其朋友数据库的问题。
我的观点,你需要三张桌子
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.8.1/jquery.min.js"></script>
<input type="checkbox" name="vehicle" value="5">5<br>
<input type="checkbox" name="vehicle" value="15">15<br>
<input type="checkbox" name="vehicle" value="25">25<br>
<input type="checkbox" name="vehicle" value="35">35<br>
<input type='text' id='txt1' value='0' />
<input type='text' id='txt2' />
获取用户的所有朋友
Individual (IndId (PK), Name ...)
User (UserId (PK), IndId (FK to Individual Table), login, password etc)
Friends(FID(PK), UserId (FK to User Table), IndId (FK to Individual Table))
答案 1 :(得分:1)
我所做的是为所有 tbl_users 的列表创建的第一个表。然后为 tbl_friendslist 创建了另一个表。 tbl_friendslist 表的功能是存储用户表ex的id。用户10添加了用户11,数据将存储在 tbl_friendslist 表中,i用户ENUM标记用户11是否接受,拒绝了请求..
答案 2 :(得分:0)
你应该有2个表:
TBL_Users 将有User_ID
TBL_Friends 将有Friend_ID
和Friend_User_ID
相关性将介于TBL_Users.User_ID
和TBL_Friends.Friend_User_ID
答案 3 :(得分:0)
你需要两张桌子。 用户(id,UserName,...) UserFriendShip(ID,ToUserId,FromUserId,RequestStatus,RequestStatusReason)
示例:我想和你成为朋友(我们是用户,所以用户表有我们的记录)
ToUserId:您的用户ID FromUserId:我的用户ID ResquestStatus:请求,接受或枚举值,因此在sql server中使用tinyint not int作为枚举值。 RequestStatusReason:这个区域非常重要。认为你第一次接受然后拒绝了我。这个区域将存储该细节。
指定您的必需品然后您可以自己设计它我只是想检查。