ForeignKeyConstraint Sınıf
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Bir değer veya satır silindiğinde veya güncelleştirildiğinde birincil anahtar/yabancı anahtar ilişkisindeki bir sütun kümesinde uygulanan eylem kısıtlamalarını temsil eder.
public ref class ForeignKeyConstraint : System::Data::Constraint
[System.Serializable]
public class ForeignKeyConstraint : System.Data.Constraint
public class ForeignKeyConstraint : System.Data.Constraint
[<System.Serializable>]
type ForeignKeyConstraint = class
inherit Constraint
type ForeignKeyConstraint = class
inherit Constraint
Public Class ForeignKeyConstraint
Inherits Constraint
- Devralma
- Öznitelikler
Örnekler
Aşağıdaki örnek bir ForeignKeyConstraintoluşturur, özelliklerinden bazılarını ayarlar ve bir DataTable nesnenin ConstraintCollectionöğesine ekler.
' The next line goes into the Declarations section of the module:
' SuppliersProducts is a class derived from DataSet.
Private suppliersProducts As SuppliersProducts
Private Sub CreateConstraint()
' Declare parent column and child column variables.
Dim parentColumn As DataColumn
Dim childColumn As DataColumn
Dim fkeyConstraint As ForeignKeyConstraint
' Set parent and child column variables.
parentColumn = suppliersProducts.Tables("Suppliers").Columns("SupplierID")
childColumn = suppliersProducts.Tables("Products").Columns("SupplierID")
fkeyConstraint = New ForeignKeyConstraint( _
"SupplierFKConstraint", parentColumn, childColumn)
' Set null values when a value is deleted.
fkeyConstraint.DeleteRule = Rule.SetNull
fkeyConstraint.UpdateRule = Rule.Cascade
fkeyConstraint.AcceptRejectRule = AcceptRejectRule.Cascade
' Add the constraint, and set EnforceConstraints to true.
suppliersProducts.Tables("Products").Constraints.Add(fkeyConstraint)
suppliersProducts.EnforceConstraints = True
End Sub
Açıklamalar
Bir ForeignKeyConstraint sütundaki (veya sütunlardaki) bir değer silindiğinde veya güncelleştirildiğinde gerçekleştirilen eylemi kısıtlar. Böyle bir kısıtlama birincil anahtar sütunlarıyla kullanılmak üzere tasarlanmıştır. İki tablo arasındaki bir üst/alt ilişkide, üst tablodan bir değeri silmek alt satırları aşağıdaki yollardan biriyle etkileyebilir.
Alt satırlar da silinebilir (basamaklı eylem).
Alt sütundaki (veya sütunlardaki) değerler null değerlere ayarlanabilir.
Alt sütundaki (veya sütunlardaki) değerler varsayılan değerlere ayarlanabilir.
Özel durum oluşturulabilir.
ForeignKeyConstraintnesneleri, özelliği aracılığıyla ConstraintCollection erişilen içinde DataTableyer alırConstraints.
EnforceConstraints özelliği trueolarak ayarlanmadığı sürece kısıtlamalar uygulanmaz.
AcceptRejectRule bir nesnenin DataTable yöntemi her çağrıldığında zorlanırAcceptChanges.
Oluşturucular
| Name | Description |
|---|---|
| ForeignKeyConstraint(DataColumn, DataColumn) |
Belirtilen üst ve alt ForeignKeyConstraint nesnelerle sınıfının yeni bir örneğini DataColumn başlatır. |
| ForeignKeyConstraint(DataColumn[], DataColumn[]) |
Belirtilen üst ve alt ForeignKeyConstraint nesne dizileriyle sınıfının yeni bir örneğini DataColumn başlatır. |
| ForeignKeyConstraint(String, DataColumn, DataColumn) |
Belirtilen ad, üst ve alt ForeignKeyConstraint nesnelerle sınıfın yeni bir örneğini DataColumn başlatır. |
| ForeignKeyConstraint(String, DataColumn[], DataColumn[]) |
Sınıfın ForeignKeyConstraint yeni bir örneğini belirtilen adla ve üst ve alt DataColumn nesne dizileriyle başlatır. |
| ForeignKeyConstraint(String, String, String, String[], String[], AcceptRejectRule, Rule, Rule) |
Bu oluşturucu, Visual Studio ortamında tasarım zamanı desteği için sağlanır. Bu oluşturucu kullanılarak oluşturulan ForeignKeyConstraint nesnelerin AddRange(Constraint[])aracılığıyla koleksiyona eklenmesi gerekir. Belirtilen adlara sahip tablolar ve sütunlar yöntemi çağrılırken mevcut olmalıdır veya bu oluşturucu çağrılmadan önce çağrıldıysa BeginInit() , belirtilen adlara sahip tablo ve sütunların EndInit() çağrılan zamanda mevcut olması gerekir. |
| ForeignKeyConstraint(String, String, String[], String[], AcceptRejectRule, Rule, Rule) |
Bu oluşturucu, Visual Studio ortamında tasarım zamanı desteği için sağlanır. Bu oluşturucu kullanılarak oluşturulan ForeignKeyConstraint nesnelerin AddRange(Constraint[])aracılığıyla koleksiyona eklenmesi gerekir. Belirtilen adlara sahip tablolar ve sütunlar yöntemi çağrılırken mevcut olmalıdır veya bu oluşturucu çağrılmadan önce çağrıldıysa BeginInit() , belirtilen adlara sahip tablo ve sütunların EndInit() çağrılan zamanda mevcut olması gerekir. |
Özellikler
| Name | Description |
|---|---|
| _DataSet |
Bu kısıtlamanın ait olduğu DataSet alır. (Devralındığı yer: Constraint) |
| AcceptRejectRule |
Çağrıldığında AcceptChanges() bu kısıtlamada gerçekleşmesi gereken eylemi gösterir. |
| Columns |
Bu kısıtlamanın alt sütunlarını alır. |
| ConstraintName |
ConstraintCollectionbir kısıtlamanın adı. (Devralındığı yer: Constraint) |
| DeleteRule |
Bir satır silindiğinde bu kısıtlamada gerçekleşen eylemi alır veya ayarlar. |
| ExtendedProperties |
Kullanıcı tanımlı kısıtlama özellikleri koleksiyonunu alır. (Devralındığı yer: Constraint) |
| RelatedColumns |
Bu kısıtlamanın üst sütunları. |
| RelatedTable |
Bu kısıtlamanın üst tablosunu alır. |
| Table |
Bu kısıtlamanın alt tablosunu alır. |
| UpdateRule |
Bir satır güncelleştirildiğinde bu kısıtlamada gerçekleşen eylemi alır veya ayarlar. |
Yöntemler
| Name | Description |
|---|---|
| CheckStateForProperty() |
Bu kısıtlamanın ait olduğu DataSet alır. (Devralındığı yer: Constraint) |
| Equals(Object) |
Geçerli ForeignKeyConstraint değerin belirtilen nesneyle aynı olup olmadığını gösteren bir değer alır. |
| GetHashCode() |
ForeignKeyConstraint nesnesinin bu örneğinin karma kodunu alır. |
| GetType() |
Geçerli örneğin Type alır. (Devralındığı yer: Object) |
| MemberwiseClone() |
Geçerli Objectbasit bir kopyasını oluşturur. (Devralındığı yer: Object) |
| SetDataSet(DataSet) |
Kısıtlamanın DataSetayarlar. (Devralındığı yer: Constraint) |
| ToString() |
varsa dize olarak ConstraintNamealır. (Devralındığı yer: Constraint) |
Şunlara uygulanır
İş Parçacığı Güvenliği
Bu tür, çok iş parçacıklı okuma işlemleri için güvenlidir. Tüm yazma işlemlerini eşitlemeniz gerekir.