php - 如何消除冗余

标签 php mysql

如何避免在 mysql 表中重复插入数据,例如 Id 003

STUDENT ID              SUBJECT
003                     MATHS
003                     MATHS
004                     ENGLISH
003                     MATHS
004                     SCIENCE 

最佳答案

数据库可以使用唯一索引或约束(功能上等效)为您验证数据:

create unique index idx_t_student_subject on t(student, subject);

您还可以在创建表时将其定义为约束:

create table t (
    . . .
    constraint unq_t_student_subject unique (student, subject)
    . . .
);

当您尝试插入重复行时,您会收到错误消息。

注意:主键具有相同的效果,以及将每一列定义为 NOT NULL

关于php - 如何消除冗余,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36236255/

相关文章:

php - 复制结构未知的 MySQL 行

php - 如何设置多个国家的运输方式?

javascript - 浏览器如何处理跨选项卡的AJAX请求

MYSQL:将 IN 字符串作为整数数组进行搜索

mysql - 升级到 Laravel 7 后不能再使用 mysqldump

javascript - 如何在 jquery post 中返回数据?

php - Chrome 的 MySQL UTF8,IE 的 UTF8,但是 Chrome 的 HEADER UTF8 和 IE 的 UTF-8?

MySQL:错误 1142 (42000) 和错误 1064 (42000)

php - 如何禁用不需要的请求? (MySQL、.htaccess、PHP)

javascript - 所见即所得 HTML 编辑器、字符留置和 MySQL 存储优化