apache derby 中的外键会自动填充列吗?
Do foreign keys in apache derby automatically populate a column?
最近我一直在尝试创建一个 RDB,而我 运行 遇到的问题是,我具有外键约束的列不会填充引用列的值(它将具有空值).我设法获得正确值的唯一方法是手动填充它。
但是,我要说的是,外键确实阻止了我在两列中使用不同的值。
TLDR/Conclusion:
那么,外键是否只是限制列中的值而不必填充该列?
如果是这样,什么 function/method 可以实现这个目标?
谢谢,
迈克尔
外键约束只是限制列中的值而不填充该列。
您的应用程序应将引用 table 中的外键列的值设置为被引用 table 中被引用列的值。
通常,这些行是相关的,并且您的应用程序知道它正在处理与其他 table.
中引用的行具有特定关系的特定行
例如,在一个简单的劳动力管理应用程序中,您可能有 tables EMPLOYEE
和 DEPARTMENT
,并且您的 EMPLOYEE
table 可能有外键列 MANAGER_NAME
和 DEPARTMENT_NAME
。为新员工插入新行时,您的数据输入表单已经要求操作员从部门列表中选择员工的部门,并从经理列表中选择员工的经理,因此您的应用程序然后设置 MANAGER_NAME
和 DEPARTMENT_NAME
在您执行 INSERT
时使用该数据
最近我一直在尝试创建一个 RDB,而我 运行 遇到的问题是,我具有外键约束的列不会填充引用列的值(它将具有空值).我设法获得正确值的唯一方法是手动填充它。
但是,我要说的是,外键确实阻止了我在两列中使用不同的值。
TLDR/Conclusion:
那么,外键是否只是限制列中的值而不必填充该列?
如果是这样,什么 function/method 可以实现这个目标?
谢谢,
迈克尔
外键约束只是限制列中的值而不填充该列。
您的应用程序应将引用 table 中的外键列的值设置为被引用 table 中被引用列的值。
通常,这些行是相关的,并且您的应用程序知道它正在处理与其他 table.
中引用的行具有特定关系的特定行例如,在一个简单的劳动力管理应用程序中,您可能有 tables EMPLOYEE
和 DEPARTMENT
,并且您的 EMPLOYEE
table 可能有外键列 MANAGER_NAME
和 DEPARTMENT_NAME
。为新员工插入新行时,您的数据输入表单已经要求操作员从部门列表中选择员工的部门,并从经理列表中选择员工的经理,因此您的应用程序然后设置 MANAGER_NAME
和 DEPARTMENT_NAME
在您执行 INSERT