如何避免重复输入

nejc

我在我的网站上创建了一个表单,用户可以在其中创建一个帐户。我将所有内容保存到连接到网站的数据库中。这是我创建表的方式:

CREATE TABLE Customer(
    CID int(9) not null PRIMARY KEY AUTO_INCREMENT,
    Email VARCHAR(100) not null,
    CustomerName VARCHAR(42) not null,
    Password VARCHAR(42) not null,
    Phone VARCHAR(42)
);

由于用户将使用电子邮件和密码来稍后登录该网站,因此我不希望重复输入电子邮件。现在,我的问题是我应该使表中的列电子邮件变得唯一,还是应该检查输入的电子邮件是否已经存在于数据库中(使用PHP)?有什么区别吗?

马克斯·马斯特

例如,使电子邮件和用户名具有唯一性

CREATE TABLE `Customer` (
    `CID` INT(9) NOT NULL AUTO_INCREMENT,
    `Email` VARCHAR(100) NOT NULL,
    `CustomerName` VARCHAR(42) NOT NULL,
    `Password` VARCHAR(42) NOT NULL,
    `Phone` VARCHAR(42) NULL DEFAULT NULL,
    PRIMARY KEY (`CID`),
    UNIQUE INDEX `Email` (`Email`),
    UNIQUE INDEX `CustomerName` (`CustomerName`)
);

当然,您还必须在应用程序中检查它,但这会阻止它。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章