两个登录帐号的用户登录表的设计问题

toxise 2011-11-25 06:00:25
正在做一个登录模块,可以使用 email或者phone作为登录帐号登录


由于登录帐号不能重复,所以 email字段和phone字段都必须是unique

但是这里就不能保证 email和phone相等了,例如:
帐号A : phone = 123 , email = 456@123.com , password=qq
帐号B : phone = 444 , email = 123 , password=qq
那么使用sql 语句 "where (phone=? or email=? ) and password=?"的时候
如果输入的帐号密码为 {123,qq}就会查到两个记录

暂时的办法只能通过校验phone是否为纯数字,email是否含有@来解决,不让它们重复。
问是否存在数据库的设计让某个值在email + phone 的范围内都必须唯一~

...全文
83 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
山东蓝鸟贵薪 2011-11-27
  • 打赏
  • 举报
回复
学习一下
  • 打赏
  • 举报
回复
做个存储过程。

程序先判断是不是邮箱格式,送入区别标志就好了,不然where (phone=? or email=? ) and password=?" 这样的烂语句很让人伤心的,数据量大了就是个杯具。
一起混吧 2011-11-26
  • 打赏
  • 举报
回复
就你自己的方法还好些。。纯为数字没有@号即为phone登陆。反之就为邮箱登陆。
ACMAIN_CHM 2011-11-25
  • 打赏
  • 举报
回复
[Quote]问是否存在数据库的设计让某个值在email + phone 的范围内都必须唯一~
[/Quote]
没有这种方法 ,当然可以在触发器中INSERT的时候检查一下。但还是你自己的方法更可靠。
开发背景随着时代的进步和科技的发展,计算机网络的发展日新月异,深刻的影响着我们的生活,受疫情的影响,为了方便教师和学生打印文件以及取文件,节约学生和老师等待时间,节约打印店的打印成本,提高打印店的打印效率,开发一款在线的打印系统是十分有必要的,校园在线打印预约系统把上传文件、选择打印店、打印支付、打印完成取文件以及管理功能集成一身,各管理人员分工合作、相互配合,及时完成打印任务。也方便打印店打印更方便更节约成本的打印文件以及节约学生的空闲时间。现阶段学校的打印文件模式都是传统的打印方式:学生需要跑到打印店拿QQ,微信,U盘给打印店的电脑上传文件,在等待别人打印完成后才能让打印店管理员打印文件,打印店管理员需要一个一个选择文件打印,在打印高峰期间,管理员打印文件忙不过来,不能给同学良好的打印服务,所以传统的打印文件方式不满足与当前社会的发展趋势。 开发目的利用现代计算机相关技术来进行在线打印预约,以减轻打印店工作人员的工作负担以及提高工作效率,减少学生打印等待时间。学生只需要上传需要打印的文件,然后选择打印店,选择支付以及去打印文件大概时间就可以,而打印店管理员只需要接收学生发的文件,以及打印,把打印的文件整理即可,可以根据学生取文件的时间自己编排打印文件的顺序,更好的利用时间,提高打印文件效率。 项目简介该项目是基于SpringBoot+SSM校园在线打印预约系统,包含两个角色:一个是用户模块,一个是打印店管理员模块。用户模块下面有个人中心模块,店铺选择模块,资料分享模块,资料分享模块,交易记录模块,使用帮助模块。在打印店管理员模块下有点单管理模块,店铺管理模块,价格管理模块。 项目运行截图下面从登录页面、用户界面和打印店管理页面三个部位来叙述全部系统。用户、商店和管理员都必须登录才可以浏览在线管理系统系统。管理员可以管理方法商店,但管理员可以是商店。用户登录输入校园在线打印预约系统的网址后,电脑浏览器将进到校园在线打印预约系统。会先进到系统的主页。用户可以先浏览系统首页,随后登录。用户注册如果登录者尚未注册,您需要注册一个帐户。单击右侧的注册按钮,将显示注册页面。用户需要填写用户名、电话号码、登录密码等信息。输入手机号码后,点击发送验证码,验证码就会发送到手机上。填写完毕后,点击注册按钮。添加后会跳转到登录页面。注册界面如图 短信验证码发送成功后,在线预约打印系统会弹出提示,此时用户的手机就会收到短信验证码。短信验证码发送成功界面如图进行账号注册。用户收到短信验证码如图 用户登录后的首页店铺详情个人中心      积分记录我的文件  文件共享管理员登录订单信息  订单详情店铺信息  价格设置 项目论文      

56,679

社区成员

发帖
与我相关
我的任务
社区描述
MySQL相关内容讨论专区
社区管理员
  • MySQL
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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