【问题标题】:Check if a user exists in SQL database, make the user, if not, don't make one?检查SQL数据库中是否存在用户,创建该用户,如果没有,不创建一个?
【发布时间】:2012-04-03 09:41:29
【问题描述】:

我想知道如何检查用户是否存在,如果用户确实存在,告诉他们他们的帐户已被使用?谢谢!

编辑:有点像 COLUMN_EXISTS 类型的函数?
编辑:这是一个 MySQL 服务器! :D

【问题讨论】:

  • 您需要指定 RDBMS 以获得有用的答案(Oracle?MySQL?SQL-Server?)等

标签: mysql sql if-statement conditional


【解决方案1】:

您需要发表声明

SELECT id FROM user WHERE login="JohnSmith"

并查看它是否为您提供任何行。如果是 - 用户存在。

【讨论】:

  • 效果很好。我用过: if (isset($row['EMAIL'])) { echo "您的电子邮件已在使用中。再试一次。"; } else { //写入 MySQL 数据库。 } 谢谢!!
【解决方案2】:

如果不存在(SELECT * FROM users WHERE username = 'SnarkyDTheman') 然后 插入用户...

【讨论】:

    【解决方案3】:

    这取决于您的 SQL 方言。即使是这样的东西也不能移植:

    IF NOT EXISTS (SELECT * FROM users WHERE username = @username)
        INSERT INTO users (username) VALUES (@username);
    ELSE
        RAISERROR 'whatever';
    

    看看the MySQL documentation for the IF statement

    使用 MySQL,您提出错误的选项有点复杂。您可以从存储的程序中返回一个行集,该行集指示是否执行了插入。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-04-05
      • 1970-01-01
      • 2016-08-06
      • 1970-01-01
      • 2016-11-05
      相关资源
      最近更新 更多