SQL Server: ошибка при создании двух внешних ключей на одной таблице - PullRequest
0 голосов
/ 17 сентября 2018
create table TiposPeliculas
(
    id_tipoPelicula int identity (1, 1), 
    descipcion varchar (30)
    constraint pk_tipoPelicula primary key(id_tipoPelicula)
)

create table Generos
(
     id_genero int identity (1,1), 
     descripcion varchar(20)
     constraint pk_generos primary key(id_genero)
)

create table Peliculas 
(
     id_pelicula int not null, 
     id_tipoPelicula int, 
     id_genero int, 
     titulo varchar (30),
     duracion time,
     idioma varchar (30),
     sub bit
     constraint pk_pelicula primary key (id_pelicula, id_tipoPelicula)
     constraint fk_generoPelicula foreign key (id_genero) references Generos (id_genero),
     constraint fk_tipoPeliculasDePeli foreign key (id_tipoPelicula) references TipoPeliculas (id_tipoPelicula)
)

FOREIGN KEY для id_tipoPelicula выдает ошибку:

внешний ключ "fk_tipoPeliculasDePeli" ссылается на недопустимую таблицу "TipoPeliculas"

Ответы [ 2 ]

0 голосов
/ 17 сентября 2018

Ошибка:

внешний ключ "fk_tipoPeliculasDePeli" ссылается на недопустимую таблицу "TipoPeliculas"

В нем говорится, что внешний ключ является ссылкой на недопустимую таблицу "TipoPeliculas", что означает, что таблица "TipoPeliculas" не существует.

В вашем вопросе название таблицы "TiposPeliculas". Следовательно, вам нужно исправить имя таблицы в справочнике.

Также имя столбца должно быть «id_tipoPelicula» вместо «id_tiposPelicula» в ссылке.

Запустите приведенный ниже код

create table TiposPeliculas
(
    id_tipoPelicula int identity (1, 1), 
    descipcion varchar (30)
    constraint pk_tipoPelicula primary key(id_tipoPelicula)
)

create table Generos
(
     id_genero int identity (1,1), 
     descripcion varchar(20)
     constraint pk_generos primary key(id_genero)
)

create table Peliculas 
(
     id_pelicula int not null, 
     id_tipoPelicula int, 
     id_genero int, 
     titulo varchar (30),
     duracion time,
     idioma varchar (30),
     sub bit
     constraint pk_pelicula primary key (id_pelicula, id_tipoPelicula)
     constraint fk_generoPelicula foreign key (id_genero) references Generos (id_genero),
     constraint fk_tipoPeliculasDePeli foreign key (id_tipoPelicula) references TiposPeliculas (id_tipoPelicula)
)
0 голосов
/ 17 сентября 2018
create table Peliculas 
(
      id_pelicula int not null, 
      id_tipoPelicula int, 
      id_genero int, 
      titulo varchar (30),
      duracion time,
      idioma varchar (30),
      sub bit 
  constraint pk_pelicula primary key (id_pelicula, id_tipoPelicula)  
  constraint fk_generoPelicula foreign key (id_genero) references Generos (id_genero), 
  constraint fk_tiposPeliculasDePeli foreign key (id_tiposPelicula) references TiposPeliculas (id_tiposPelicula)
)

Это сработает в ошибке орфографии в имени отношения TiposPeliculas.

...