Share via


ForeignKeyConstraint Kelas

Definisi

Mewakili pembatasan tindakan yang diberlakukan pada sekumpulan kolom dalam hubungan kunci primer/kunci asing saat nilai atau baris dihapus atau diperbarui.

public ref class ForeignKeyConstraint : System::Data::Constraint
public class ForeignKeyConstraint : System.Data.Constraint
[System.Serializable]
public class ForeignKeyConstraint : System.Data.Constraint
type ForeignKeyConstraint = class
    inherit Constraint
[<System.Serializable>]
type ForeignKeyConstraint = class
    inherit Constraint
Public Class ForeignKeyConstraint
Inherits Constraint
Warisan
ForeignKeyConstraint
Atribut

Contoh

Contoh berikut membuat ForeignKeyConstraint, mengatur beberapa propertinya, dan menambahkannya ke DataTable objek ConstraintCollection.

' 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

Keterangan

Membatasi ForeignKeyConstraint tindakan yang dilakukan saat nilai dalam kolom (atau kolom) dihapus atau diperbarui. Batasan seperti itu dimaksudkan untuk digunakan dengan kolom kunci primer. Dalam hubungan induk/anak antara dua tabel, menghapus nilai dari tabel induk dapat memengaruhi baris turunan dengan salah satu cara berikut.

  • Baris anak juga dapat dihapus (tindakan berskala).

  • Nilai dalam kolom anak (atau kolom) dapat diatur ke nilai null.

  • Nilai di kolom anak (atau kolom) dapat diatur ke nilai default.

  • Pengecualian dapat dihasilkan.

ForeignKeyConstraint objek terkandung dalam ConstraintCollection dari DataTable, yang diakses melalui Constraints properti .

Batasan tidak diberlakukan kecuali EnforceConstraints properti diatur ke true.

diberlakukan AcceptRejectRule setiap kali DataTable metode objek AcceptChanges dipanggil.

Konstruktor

ForeignKeyConstraint(DataColumn, DataColumn)

Menginisialisasi instans ForeignKeyConstraint baru kelas dengan objek induk dan anak DataColumn yang ditentukan.

ForeignKeyConstraint(DataColumn[], DataColumn[])

Menginisialisasi instans ForeignKeyConstraint baru kelas dengan array objek induk dan anak DataColumn yang ditentukan.

ForeignKeyConstraint(String, DataColumn, DataColumn)

Menginisialisasi instans ForeignKeyConstraint baru kelas dengan nama, objek induk, dan anak DataColumn yang ditentukan.

ForeignKeyConstraint(String, DataColumn[], DataColumn[])

Menginisialisasi instans ForeignKeyConstraint baru kelas dengan nama yang ditentukan, dan array objek induk dan anak DataColumn .

ForeignKeyConstraint(String, String, String, String[], String[], AcceptRejectRule, Rule, Rule)

Konstruktor ini disediakan untuk dukungan waktu desain di lingkungan Visual Studio. ForeignKeyConstraint objek yang dibuat dengan menggunakan konstruktor ini kemudian harus ditambahkan ke koleksi melalui AddRange(Constraint[]). Tabel dan kolom dengan nama yang ditentukan harus ada pada saat metode dipanggil, atau jika BeginInit() telah dipanggil sebelum memanggil konstruktor ini, tabel dan kolom dengan nama yang ditentukan harus ada pada saat dipanggil EndInit() .

ForeignKeyConstraint(String, String, String[], String[], AcceptRejectRule, Rule, Rule)

Konstruktor ini disediakan untuk dukungan waktu desain di lingkungan Visual Studio. ForeignKeyConstraint objek yang dibuat dengan menggunakan konstruktor ini kemudian harus ditambahkan ke koleksi melalui AddRange(Constraint[]). Tabel dan kolom dengan nama yang ditentukan harus ada pada saat metode dipanggil, atau jika BeginInit() telah dipanggil sebelum memanggil konstruktor ini, tabel dan kolom dengan nama yang ditentukan harus ada pada saat dipanggil EndInit() .

Properti

_DataSet

Mendapatkan tempat DataSet batasan ini berada.

(Diperoleh dari Constraint)
AcceptRejectRule

Menunjukkan tindakan yang harus dilakukan di seluruh batasan ini saat AcceptChanges() dipanggil.

Columns

Mendapatkan kolom anak dari batasan ini.

ConstraintName

Nama batasan di ConstraintCollection.

(Diperoleh dari Constraint)
DeleteRule

Mendapatkan atau mengatur tindakan yang terjadi di seluruh batasan ini saat baris dihapus.

ExtendedProperties

Mendapatkan kumpulan properti batasan yang ditentukan pengguna.

(Diperoleh dari Constraint)
RelatedColumns

Kolom induk dari batasan ini.

RelatedTable

Mendapatkan tabel induk dari batasan ini.

Table

Mendapatkan tabel anak dari batasan ini.

UpdateRule

Mendapatkan atau mengatur tindakan yang terjadi di seluruh batasan ini saat baris diperbarui.

Metode

CheckStateForProperty()

Mendapatkan tempat DataSet batasan ini berada.

(Diperoleh dari Constraint)
Equals(Object)

Mendapatkan nilai yang menunjukkan apakah saat ini ForeignKeyConstraint identik dengan objek yang ditentukan.

GetHashCode()

Mendapatkan kode hash dari instans ForeignKeyConstraint objek ini.

GetType()

Mendapatkan dari instans Type saat ini.

(Diperoleh dari Object)
MemberwiseClone()

Membuat salinan dangkal dari saat ini Object.

(Diperoleh dari Object)
SetDataSet(DataSet)

Mengatur batasan DataSet.

(Diperoleh dari Constraint)
ToString()

ConstraintNameMendapatkan , jika ada, sebagai string.

(Diperoleh dari Constraint)

Berlaku untuk

Keamanan Thread

Jenis ini aman untuk operasi baca multithreaded. Anda harus menyinkronkan operasi tulis apa pun.

Lihat juga