Maison >base de données >tutoriel mysql >Comment garantir l'intégrité référentielle entre les types de base et les sous-types exclusifs dans les bases de données relationnelles ?
Dans la modélisation de bases de données relationnelles, un sous-type représente une spécialisation d'un type de base. La mise en œuvre de l'intégrité référentielle entre les types de base et les sous-types garantit que les données de ces tableaux restent cohérentes et exactes.
Avec les sous-types exclusifs, un type de base ne peut avoir qu'une seule ligne de sous-type. Pour appliquer cette contrainte :
CREATE TABLE BaseTable ( BaseTypeId INT PRIMARY KEY, Discriminator CHAR(1) CHECK (Discriminator IN ('B', 'C', 'D')) ); CREATE TABLE SubtypeTable ( SubtypeTypeId INT PRIMARY KEY, FOREIGN KEY (BaseTypeId) REFERENCES BaseTable(BaseTypeId), CHECK ( EXISTS ( SELECT 1 FROM BaseTable WHERE BaseTypeId = SubtypeTable.BaseTypeId AND Discriminator = 'B' ) )
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!