Utiliser la Clé Primaire Composite en tant que Clé Étrangère
Comment puis-je utiliser une clé primaire composite comme une clé étrangère? Il ressemble à une tentative de ma part ne fonctionne pas.
create table student
(
student_id varchar (25) not null ,
student_name varchar (50) not null ,
student_pone int ,
student_CNIC varchar (50),
students_Email varchar (50),
srudents_address varchar(250),
dept_id varchar(6),
batch_id varchar(4),
FOREIGN KEY (dept_id) REFERENCES department(dept_id),
FOREIGN KEY (batch_id) REFERENCES batch(batch_id),
CONSTRAINT pk_studentID PRIMARY KEY (batch_id,dept_id,student_id) )
create table files
(
files_name varchar(50) not null ,
files_path varchar(50),
files_data varchar(max),
files_bookmarks xml ,
FOREIGN KEY (pk_studentID ) REFERENCES student(pk_studentID ),
CONSTRAINT pk_filesName PRIMARY KEY (files_name) )
Est-il question?
Comment Utiliser la Clé Primaire Composite en tant que Clé Étrangère
Bellora j'ai ajouté la question.
Comment Utiliser la Clé Primaire Composite en tant que Clé Étrangère
Bellora j'ai ajouté la question.
OriginalL'auteur comsian | 2012-05-12
Vous devez vous connecter pour publier un commentaire.
La ligne:
est faux. Vous ne pouvez pas utiliser
pk_studentID
comme ça, c'est juste le nom de la PK de la contrainte dans la table parent. Utilisation d'un composé de la Clé Primaire comme Clé Étrangère, vous devrez ajouter le même nombre de colonnes (qui composent la PK) avec les mêmes types de données pour la table d'enfant, puis utilisez la combinaison de ces colonnes dans laFOREIGN KEY
définition:Aussi, l'ordre est important.
Vous m'avez sauvé d'un beaucoup de la détresse, ce n'est vraiment pas clair à partir de la documentation. Merci!
OriginalL'auteur ypercubeᵀᴹ