如何修改多对多关系的第三张表啊??

fanyuna 2009-08-07 04:16:19
如:我有三张表:user(userId,userName,userPass);quanxian(quanxianId,quanxianName);userQuanxian(userId,quanxianId);其中userQuanxian表中的userId,quanxianId分别是user和quanxian的外键,两者合起来作为主键.
我想问的是如果我想修改某个用户的权限,这样建表如何修改??修改的SQL语句怎么写??
update userQuanxian set quanxianId=.... where userId=某一个数值 在userQuanxian表中某一个数值的userId的记录有多行,我怎么才能实现修改这个userId对应的quanxianId呢??
...全文
22 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
fanyuna 2009-08-07
  • 打赏
  • 举报
回复
谢谢了!
l_jiayou 2009-08-07
  • 打赏
  • 举报
回复
这种表结构不好直接修改权限值,但是可以采用如下方法比较方便。
比如userId为1的用户在userQuanxian表中有1,2,3权限值
现在我要将其权限修改成2,5,6
如果用Update方法,不好处理,可以:
1,delete from userQuanxian where userId=1
2,insert into userQuanxian (userId,quanxianId) values(1,2);
insert into userQuanxian (userId,quanxianId) values(1,5);
insert into userQuanxian (userId,quanxianId) values(1,6);
其结果相当于完成了修改的工作。注意采用事务处理,This all.

81,092

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧