gpt4 book ai didi

mysql - 创建一个学生ID以字母开头的表 - mysql

转载 作者:行者123 更新时间:2023-11-29 14:18:26 25 4
gpt4 key购买 nike

我需要为学生创建一个表格,其 ID 以 M 或 I 开头,然后是 7 位数字。我考虑创建一个表,其中一个字段选择字母 M 或 I,第二个字段选择 7 位数字。然后我将使用它们来创建复合主键。但我不认为这就是我要寻找的。我想要一栏用于学生 ID。

这是我到目前为止所拥有的:

   create table student(    
student_id_first ENUM('M', 'I')
, student_id_digits char(8) not null unique
, first_name varchar(50)
, last_name varchar(50)
, Primary Key(student_id_first, student_id_digits)
) ;

想法?

谢谢。

最佳答案

您不应该将数据验证放在数据库层中。您还创建了一个复合键,这会增加额外的、不必要的开销。如果在某些时候您需要调整或放宽规则,则需要重新定义数据库架构。

在检索数据并必须组装实际的学生标识符时,这也会带来毫无意义的复杂性。除非您有充分的理由将它们分开,否则请将它们放在一起。

只需使用一列并强制执行应用程序中的内容。即使是非常基本的 ORM 也能让您做到这一点。

关于mysql - 创建一个学生ID以字母开头的表 - mysql,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12169838/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com