给我一个思路。 判断表内只能有一个单独的状态

aspvfp 2005-05-04 11:23:02
新手问问题
ID 地区编号 用户名 电话 代理状态
1 010 张三 123456 1
2 020 李四 654789 0
3 0591 王五 547894 0
4 010 陈六 123456 0
5 010 钱八 123456 0
6 010 xxxx 123456 0

打个比方某个产品在一个地区只能有1个代理 但是代理人人都能申请 刚申请的时候代理状态=0

大家可以看出010 这个地区 目前是张三做代理 比如说第二个月了 要换钱八做代理

后台管理->按地区排列 操作的时候如何提示 (地区编号=010)的代理状态只能有1个=1呢

又假设另外一个地区可以有2个代理 操作的时候就不允许 (代理状态=1)的记录>2
...全文
87 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
pla18sep 2005-05-05
  • 打赏
  • 举报
回复
新建一纯代理商的简易表

将成为代理商的记录提取并记录在表
更换或添加时
<%
if 该地区有记录
删除
end if
新增
%>
wanggh1102 2005-05-05
  • 打赏
  • 举报
回复
不用sql语句写 用程序代码写是否超过代理个数的判断

允许代理个数=select 允许代理个数 from 允许代理个数表 where 地区编号='010'
现有代理个数=select count(id) from table where 地区编号='010' and 代理状态=1
if 允许代理个数>现有代理个数
写让他代理的代码
else
写不允许代理的代码


lieco 2005-05-05
  • 打赏
  • 举报
回复
恩 楼上的说得也有道理
jarraytan 2005-05-05
  • 打赏
  • 举报
回复
若单纯的判断一个地区有几个代理的话可以用sql语句的统计函数实现。
select count(id) from table where 地区编号='010' and 代理状态=1

不过我想没必要判断有几个代理吧?若是你要求一个地区只能有一个代理的话,那么在修改代理的时候,先设该地区的所有为1的状态都为0,然后将要修改的人的状态改为1不就OK了。
conn.execute "update table set 代理状态=0 where 地区编号='010' and 代理状态=1"
conn.execute "update table set 代理状态=1 where 地区编号='010' and 用户名='钱八'"

28,406

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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