【问题标题】:Avoid double inserted information in database [duplicate]避免在数据库中重复插入信息[重复]
【发布时间】:2013-02-26 18:54:45
【问题描述】:

大家好,我有一个名为 username 的表,在我的程序中,我可以使用用户名和密码创建新用户。

但我不想让两个用户使用相同的用户名

我正在使用 php 和 mysql。

我该如何处理?

谢谢大家

【问题讨论】:

标签: php mysql sql


【解决方案1】:

您可以检查名称是否已存在并要求用户选择其他名称;

SELECT COUNT(username) FROM users WHERE userName = '[name to check]'

并向用户名字段添加唯一索引

【讨论】:

  • 我可以在 php 中实现吗?如果可以,我如何检查每一列,如果用户名与我的帖子相同……无法保存此用户?
【解决方案2】:

添加UNIQUE 约束,以便在列上强制执行不同的值,

ALTER TABLE tableNAme ADD CONSTRAINT tb_unique UNIQUE(username)

【讨论】:

  • 我改变了我的表并添加了一个唯一索引......之后我尝试添加一个具有相同用户名的新用户。它没有用... o_o :(
  • 你能发布这个声明的结果吗? DESC yourTableName?
  • 对不起,我觉得我写的有点奇怪,它有效,我可以将用户添加到数据库中,但即使我添加了你谈论的这个唯一索引,我也可以将用户添加到数据库中
  • 查看我的更新答案。
  • tb_unique 是什么?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-08-15
  • 1970-01-01
相关资源
最近更新 更多