首页 > 解决方案 > 外键“id_client”在引用表“nrcomanda”中引用了无效列“id_client”

问题描述

外键“id_client”在引用表“nrcomanda”中引用了无效列“id_client”。

use Logistica

create table client
(
id_client int primary key identity(1,1),
nume varchar(20) not null,
prenume varchar(20) not null,
id_nrc int foreign key references nrcomanda(id_nrc)
)

create table categorie
(
id_categorie int primary key identity(1,1),
categorie varchar(50),
)

create table pachet
(
id_pachet int primary key identity(1,1),
tip_pachet varchar(50)
)

create table transport
(
id_transport int primary key identity(1,1),
tip_transport varchar(20)
)

create table nrcomanda
(
id_nrc int primary key identity(1,1),
nrcomanda varchar not null,
greutate decimal(7,2),
asigurare varchar(50), 
foreign key(id_client) references client(id_client),
foreign key(id_categorie) references categorie(id_categorie),
foreign key(id_pachet) references pachet(id_pachet),
foreign key(id_transport) references transport(id_transport),
foreign key(id_adresa) references adresa(id_adresa)
)
create table raion
(
id_raion int primary key identity(1,1),
nume varchar(50) 
)

create table localitate
(
id_loc int primary key identity(1,1),
id_raion int,
nume varchar(50)
foreign key(id_raion) references raion(id_raion)
)

create table adresa
(
id_adresa int primary key identity(1,1),
id_raion int foreign key references raion(id_raion),
id_loc int foreign key references localitate(id_loc),
id_nrc int foreign key references nrcomanda(id_nrc),
id_tara int foreign key references tara(id_tara),
strada varchar(30),
nr varchar(6),
ap varchar(6),
bloc varchar(6),
activ bit default 1
)

create table tara
(
id_tara int primary key identity(1,1),
nume varchar(20)
)

标签: sqlsql-server

解决方案


我认为您在创建表中错过了一些列定义:

create table nrcomanda
(
id_nrc int primary key identity(1,1),
nrcomanda varchar not null,
greutate decimal(7,2),
asigurare varchar(50), 
Id_client int,
Id_categorie int,
...
Id_adresa int, 
foreign key(id_client) references client(id_client),
foreign key(id_categorie) references categorie(id_categorie),
foreign key(id_pachet) references pachet(id_pachet),
foreign key(id_transport) references transport(id_transport),
foreign key(id_adresa) references adresa(id_adresa)
)

推荐阅读