Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches

◆ Create()

void System.Data.ForeignKeyConstraint.Create ( string relationName,
DataColumn[] parentColumns,
DataColumn[] childColumns )
inlineprivate

Definition at line 727 of file ForeignKeyConstraint.cs.

728 {
729 if (parentColumns.Length == 0 || childColumns.Length == 0)
730 {
731 throw ExceptionBuilder.KeyLengthZero();
732 }
733 if (parentColumns.Length != childColumns.Length)
734 {
735 throw ExceptionBuilder.KeyLengthMismatch();
736 }
737 for (int i = 0; i < parentColumns.Length; i++)
738 {
739 if (parentColumns[i].Computed)
740 {
741 throw ExceptionBuilder.ExpressionInConstraint(parentColumns[i]);
742 }
743 if (childColumns[i].Computed)
744 {
745 throw ExceptionBuilder.ExpressionInConstraint(childColumns[i]);
746 }
747 }
748 _parentKey = new DataKey(parentColumns, copyColumns: true);
749 _childKey = new DataKey(childColumns, copyColumns: true);
750 ConstraintName = relationName;
752 }
virtual string ConstraintName
Definition Constraint.cs:24

References System.Data.ForeignKeyConstraint._childKey, System.Data.ForeignKeyConstraint._parentKey, System.Data.Constraint.ConstraintName, System.Data.ExceptionBuilder.ExpressionInConstraint(), System.Data.ExceptionBuilder.KeyLengthMismatch(), System.Data.ExceptionBuilder.KeyLengthZero(), and System.Data.ForeignKeyConstraint.NonVirtualCheckState().

Referenced by System.Data.ForeignKeyConstraint.ForeignKeyConstraint(), and System.Data.ForeignKeyConstraint.ForeignKeyConstraint().