0
Table employee
{
employeename  //employeename is unique
}

Table job
{
jobid,job,assignedPerson,status
}

assignedPerson は employeename(employee) を参照する外部キーです
私が知りたいのは、ジョブテーブルからレコードを削除せずに従業員レコードを削除する方法を知ることです。つまり、ジョブレコードを保持し、どの人が割り当てられたかを確認したいということですその人が従業員ではなくなったとしても、その仕事..

Table employee
{
employeename
}

Table jobemployee
{
jobid,assignedPerson
}

Table job
{
jobid,job,status
}

これを行っても、「従業員」テーブルから従業員のレコードを削除したい場合は、ジョブ従業員からレコードを削除する必要があり、どの人に仕事が割り当てられたかを知ることができません..
助けてください..

4

1 に答える 1

1

最適なオプションは、 の Employee テーブルにフラグを追加することですdeleted

assignedNonEmployee回避策は、jobテーブルに列を追加することです。を削除する前に、列をにemployee設定し、その値を列にコピーします。後の列には外部キー制約がないため、レコードを削除できるようになりました。assignedPersonnullassignedNonEmployeeemployee

于 2013-08-21T11:14:20.990 に答える