Sql: ¿cómo agrego una clave externa de restricción?

programación


Esta es la primera vez que uso SQL y tengo un problema al agregar una clave externa a mi tabla.

Tengo 2 tablas: ORDER_T (referenciada) y ORDER_ITEM (referenciada)

create table ORDER_T(
Id int primary key, 
OrderDate date,
TotalAmount int
); 
create table ORDER_ITEM(
UnitPrice int,
Quantity int,
OrderID int,
ProductID int
);

Este es mi código para agregar una clave externa:

ALTER TABLE ORDER_ITEM
ADD FOREIGN KEY (OrderID) REFERENCES ORDER_T(Id);

Pero me da este error:

Cita:

Error: cerca de “EXTRANJERO”: error de sintaxis

¿Ayuda?

Lo que he probado:

Intenté buscar en línea para descubrir qué hice mal o cuál es el significado del error, pero fue en vano.

Solución 1

Crear una clave externa en una tabla existente – Crear relaciones de clave externa – SQL Server | Microsoft aprende[^]

SQL
ALTER TABLE ORDER_ITEM
ADD CONSTRAINT FK_ORDER_ITEM_ORDER_T FOREIGN KEY (OrderID) REFERENCES ORDER_T(Id);

Solución 2

Necesitas hacer lo siguiente:

SQL
ALTER TABLE TABLE2 
ADD CONSTRAINT[symbol] 
FOREIGN KEY(column_name) 
REFERENCES TABLE1(column_name);

Así, su caso:

SQL
ALTER TABLE ORDER_ITEM 
ADD CONSTRAINT FK_ORDERS 
FOREIGN KEY(OrderID) 
REFERENCES ORDER_T(Id);

Referirse: SQL: clave externa[^]

コメント

タイトルとURLをコピーしました