将图表转换为SQL数据库

将图表转换为SQL数据库,sql,database,diagram,Sql,Database,Diagram,我很难理解应该如何将这个图表转换到带有表的数据库中。我想补充一点,我对这个很陌生。这是一个示例的图片,我想将其转换为我的SQL数据库: 我不太确定这样的图在我的SQL数据库中会是什么样子,因为它并没有真正使用继承。如果有人能演示一下SQL中的表会是什么样子,我将不胜感激 谢谢 编辑: 这意味着: 一个人有一个身份证号码 学生和教师都是个人,他们在个人表中有自己的id信息,一个学生/教师只有一个id 一个学生可以有很多老师 老师可以教很多学生 因此,应该有4个表(只是psudo伪代码让您了解

我很难理解应该如何将这个图表转换到带有表的数据库中。我想补充一点,我对这个很陌生。这是一个示例的图片,我想将其转换为我的SQL数据库:

我不太确定这样的图在我的SQL数据库中会是什么样子,因为它并没有真正使用继承。如果有人能演示一下SQL中的表会是什么样子,我将不胜感激

谢谢

编辑:

这意味着:

  • 一个人有一个身份证号码
  • 学生和教师都是个人,他们在个人表中有自己的id信息,一个学生/教师只有一个id
  • 一个学生可以有很多老师
  • 老师可以教很多学生
因此,应该有4个表(只是psudo伪代码让您了解一下):

人员表: id_人员(主键) 真实id(真实id,可以是任何东西)

学生表: 我的学生, 身份证持有人, 名称 其他东西

教师表: 身份证教师 身份证持有人, 名称 其他东西

techer_学生表(使其成为多对多) 学生证
id_teacher

有几种方法可以处理数据库中的继承情况,例如,定义了数据库中的3种继承策略,它们是:单表、表对类和联接,它们都在下面的

中得到了最好的描述(包括表/类示例),我不推荐使用名称作为主键,因为很多人都有相同的全名。正如h3nr1x所说,这只是三种方法中的一种。
create table Person(
IDCode CHAR(10) UNIQUE NOT NULL,
primary key (IDCode),
);

create table Student(
IDCode CHAR(10) UNIQUE NOT NULL,
Name VARCHAR(15),
Course VARCHAR(15)
primary key (Name),
foreign key (IDCode) references Person (IDCode)
);

create table Teacher(
IDCode CHAR(10) UNIQUE NOT NULL,
Name VARCHAR(15),
Course VARCHAR(15)
primary key (Name),
foreign key (IDCode) references Person (IDCode)
);

create table StudentTeacherRelationship(
StudentName VARCHAR(15),
TeacherName VARCHAR(15),
primary key(StudentName,TeacherName),
foreign key(StudentName) references Student (Name),
foreign key(TeacherName) references Teacher (Name),