Example #1
0
 public static void PerformIntegrityChecks(Session session, Table table, object[] oldData, object[] newData, int[] updatedColumns)
 {
     if (newData != null)
     {
         int index  = 0;
         int length = table.CheckConstraints.Length;
         while (index < length)
         {
             table.CheckConstraints[index].CheckInsert(session, table, newData, oldData == null);
             index++;
         }
         if (session.database.IsReferentialIntegrity())
         {
             int num3 = 0;
             int num4 = table.FkConstraints.Length;
             while (num3 < num4)
             {
                 bool       flag       = oldData == null;
                 Constraint constraint = table.FkConstraints[num3];
                 if (!flag)
                 {
                     flag = ArrayUtil.HaveCommonElement(constraint.GetRefColumns(), updatedColumns);
                 }
                 if (flag)
                 {
                     constraint.CheckInsert(session, table, newData, oldData == null);
                 }
                 num3++;
             }
         }
     }
 }