Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/video/2.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
Database 如何在不影响开发人员体验的情况下优化数据库中下拉值的存储_Database_Database Design_Database Normalization - Fatal编程技术网

Database 如何在不影响开发人员体验的情况下优化数据库中下拉值的存储

Database 如何在不影响开发人员体验的情况下优化数据库中下拉值的存储,database,database-design,database-normalization,Database,Database Design,Database Normalization,我关心的是如何在数据库中存储多个下拉值,而不会给下一个要维护应用程序的开发人员(或要利用数据的业务分析师)带来困难 让我从一个例子开始,我有一个下拉列表: <mat-form-field> <mat-label>Nature</mat-label> <mat-select formControlName="nature"> <m

我关心的是如何在数据库中存储多个下拉值,而不会给下一个要维护应用程序的开发人员(或要利用数据的业务分析师)带来困难

让我从一个例子开始,我有一个下拉列表:

        <mat-form-field>
            <mat-label>Nature</mat-label>
            <mat-select formControlName="nature">
                <mat-option value="0">Internal Fraud</mat-option>
                <mat-option value="1">External Fraud</mat-option>
                <mat-option value="2">Employment Practices and Workplace Safety</mat-option>
                <mat-option value="3">Clients, Products, and Business Practice</mat-option>
                <mat-option value="4">Damage to Physical Assets </mat-option>
                <mat-option value="5">Business Disruption and Systems Failures</mat-option>
                <mat-option value="6">Execution, Delivery, and Process Management</mat-option>
            </mat-select>
        </mat-form-field>

您可以使用数字作为下拉类别的主键,然后将标签设置为第三列。使用此设计,您可以重命名标签,而无需重写所有查询

创建表下拉列表( 类别varchar2(128)不为空,选项id号不为空,标签varchar2(128)不为空)

在上添加主键(类别、选项\u id)
添加唯一键(选项id,标签)

谢谢您的回答,但是如果您的应用程序上有数百个类似的列表,该怎么办?您的意思是什么?你担心什么?
       <mat-form-field>
            <mat-label>Nature</mat-label>
            <mat-select formControlName="nature">
                <mat-option value="Internal Fraud">Internal Fraud</mat-option>
                <mat-option value="External Fraud">External Fraud</mat-option>
                ....
                <mat-option value="Execution, Delivery, and Process Management">Execution, Delivery, and Process Management</mat-option>
            </mat-select>
        </mat-form-field>