【发布时间】:2015-04-01 06:32:27
【问题描述】:
我有三个表,Users、Roles 和一个联结 UserRoles。
Users UserRoles Roles
======= ============= =========
UserId UserId RoleId
Username RoleId Role
Firstname Date
我的表是这样连接的:
Users.UserId -> UserRoles.UserId
Roles.RoleId -> UserRoles.RoleId
基本上,我正在寻找的是一个简单的例子,它显示:
- 如何在 UserRoles 中为具有特定角色的特定用户名插入 UserId 和 RoleId。
- 删除特定用户名的角色
我设法对特定用户名的角色进行了简单的选择,如下所示:
SELECT
dbo.Roles.Role
FROM dbo.Roles
INNER JOIN dbo.UserRoles
ON dbo.Roles.RoleId = dbo.UserRoles.RoleId
INNER JOIN dbo.Users
ON dbo.UserRoles.UserId = dbo.Users.UserId
WHERE (Username = @Username)
【问题讨论】:
-
我怀疑您的选择查询是否有效?在 Select 查询中检查“WHERE”子句。
-
是的,它正在工作“@Username”是我的 .NET 代码中的一个参数。也可以这样使用:WHERE (Username = 'John Doe')。谢谢
-
无法根据当前表设计插入到 UserRoles。因为当我在用户表中插入用户时,用户和角色之间没有关系。我可以将 UserID 插入 UserRoles 但不能插入 RoleID