Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/69.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql 多对多关系优化_Mysql_Sql_Erd_Sql Optimization - Fatal编程技术网

Mysql 多对多关系优化

Mysql 多对多关系优化,mysql,sql,erd,sql-optimization,Mysql,Sql,Erd,Sql Optimization,我正在开发一个系统,在这个系统中,我有一个存储学生语言能力的表,为了管理这个表,我们创建了以下体系结构: 表STD_语言能力表示关联实体。 STD_语言(法语、英语、阿拉伯语…)表和STD_语言技能(阅读、口语、写作、教学)之间存在多对多关系。问题在于,STD_语言和STD_语言技能不是由系统的普通用户(学生)更新的,而是由系统管理员添加的,当我试图为学生获取语言能力时,架构要求我在两个表上进行连接,以获得语言名称和技能名称。 是否仍有优化此模式的方法 如果语言技能是例如:“阅读”、“写作”、

我正在开发一个系统,在这个系统中,我有一个存储学生语言能力的表,为了管理这个表,我们创建了以下体系结构:

表STD_语言能力表示关联实体。 STD_语言(法语、英语、阿拉伯语…)表和STD_语言技能(阅读、口语、写作、教学)之间存在多对多关系。问题在于,STD_语言和STD_语言技能不是由系统的普通用户(学生)更新的,而是由系统管理员添加的,当我试图为学生获取语言能力时,架构要求我在两个表上进行连接,以获得语言名称和技能名称。
是否仍有优化此模式的方法

如果语言技能是例如:“阅读”、“写作”、“对话”、ecc.,没有名字的位置、没有技能时间限制和管理客户端模块,您可以将描述直接放入STD_language_能力表中,并删除外键cstraints,同时保留技能表,以便分配或搜索组合项(通过文本)


这样可以避免加入

如果您有一对多关系或多对多关系。你不能避免加入SQL中的标准化结构。

你是否考虑创建视图?我正在构建一个API