public void CheckDelete(int arg1, int arg2, SymBinaryTableUpdater target)
 {
     if (source.Contains(arg1) && !target.Contains(arg1))
     {
         throw ForeignKeyViolation(arg1, arg2);
     }
     if (source.Contains(arg2) && !target.Contains(arg2))
     {
         throw ForeignKeyViolation(arg2, arg1);
     }
 }
 public void WasDeleted(int surr)
 {
     if (source.Contains(surr))
     {
         throw ForeignKeyViolation(surr);
     }
 }
 public void CheckDelete(int surr1, int surr2, int surr3, Sym12TernaryTableUpdater target)
 {
     if (source.Contains(surr1, surr2) && !target.Contains12(surr1, surr2))
     {
         throw ForeignKeyViolation(surr1, surr2, surr3);
     }
 }
Beispiel #4
0
 public void CheckDelete(int surr1, int surr2, SymBinaryTableUpdater target)
 {
     if (source.Contains12(surr1, surr2) && !target.Contains(surr1, surr2))
     {
         throw ForeignKeyViolation(surr1, surr2, source.LookupAny12(surr1, surr2));
     }
 }
        public void Check()
        {
            int count = source.insertCount;

            if (count > 0)
            {
                int[] inserts = source.insertList;
                for (int i = 0; i < count; i++)
                {
                    if (!target.Contains(inserts[i]))
                    {
                        throw ForeignKeyViolation(inserts[i]);
                    }
                }
            }

            target.CheckDeletes(this);
        }