|M| 第二贴:当遇上这样的对数据库记录进行更新的时候大家是怎么做的(上一贴写得不清楚)
http://community.csdn.net/Expert/topic/5418/5418963.xml?temp=.9980127
是这样的
我有一个权限表
popedom(记录所有权限)
id popedom
1 添加
2 删除
3 修改
4 查看
... ...
然后有一个用户权限表
userPopedom
id userid popedomid
1 107 3
2 107 2
3 107 4
.. .. ..
---------------------------
像上面的表结构,然后在我的userpopdomedit.aspx页面中修改用户权限
先把popdom绑定到DataGrid然后最加加多一个checkbox记录是否有效
然后对checkbox进行更改
最后点击更新,更新权限
-------------------
更新权限我的代码是这样写的
先
delete from userPopedom where userid=107
for(i=0;i <=dg.rows.count-1;i++)
{
if(checkbox.checked)
{
insert into userpopedom (userid,popedomid) values (107,pid)
}
}
像上面的这样的写法可以正常更新数据库
但是有一个问题就是每一次都删除原来的
再添加新的时候会让自增长的ID越来越大
不知上面可以如何改过
[解决办法]
id 大这个不是问题。毕竟权限定义不会天天做。另。也可加个字段表示状态。去掉选择的时候,更改状态就可。添加的时候检查是否存在,不存在就加一条,存在就更改状态。不过这样反而麻烦。
[解决办法]
不要自增长ID那个字段,在你上面的描述中,这个字段完全是多余的
[解决办法]
cpp2017(慕白兄) ( ) 信誉:100 Blog 2007-03-26 11:13:17 得分: 0
id 大这个不是问题。毕竟权限定义不会天天做。
另。也可加个字段表示状态。
去掉选择的时候,更改状态就可。
添加的时候检查是否存在,不存在就加一条,存在就更改状态。
不过这样反而麻烦。
---------------------------
up