利用字段控制用户访问权限 >>>我用的是c#.net

che2piaopiao 2009-03-24 04:52:43
一个权限字段addr,记录着用户是否有权限访问某些地区的数据,然后把地区名字用逗号隔开可

表qx
userid addr
wang 北京,上海,深圳
li 北京, 上海

在程序中判断,然后根据用户对应的地区权限,来显示某些地区的信息.

如果用户 li 只有北京,上海的权限。

则SQL select * from table where addr in (select addr from qx where userid='li')
等于 select * from table where addr in ('北京, 上海') 但这是错误的

正确的应该是
select * from table where addr in ('北京', '上海')

我该怎样设计才好?
...全文
83 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
fengxuanll 2009-03-24
  • 打赏
  • 举报
回复
把,用','替换
shangxb 2009-03-24
  • 打赏
  • 举报
回复
如果可能的话建议修改下表结构 不要用逗号分隔的形式 不方便处理
如果要使用这种表结构 可以试试写个SQL函数 传入USERID 然后查出ADDR 并处理成'a','b'这种形式
不过我不会写^.^

27,580

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 应用实例
社区管理员
  • 应用实例社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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