MySQL ERROR 错误代码:1005。无法创建表(errno:150“外键约束格式不正确”)

问题描述 投票:0回答:1

Tengo la tabla pedidos que hace Referencia a la tabla clientes, pero MySQL me dice que la llave foranea no esta bien formada al momento de crear la tabla pedidos.

请修改坎波斯的名称和拉夫福拉内亚的日期的提示,将塔布拉帕德雷科莫和塔布拉希亚连接起来,但不要出现任何错误。 Aqui esta el SQL:

DROP TABLE IF EXISTS clientes;
CREATE TABLE clientes (
    num_clie INT NOT NULL,
    empresa VARCHAR(90) NOT NULL,
    rep_clie INT NOT NULL,
    limite_credito DECIMAL(7,2),
    UNIQUE UK_clientes_numclie (num_clie),
    CONSTRAINT PK_clientes_numclie PRIMARY KEY (num_clie),
    CONSTRAINT FK_clientes_repventas_numempl_repclie FOREIGN KEY (rep_clie) REFERENCES repventas(num_empl)
);


DROP TABLE IF EXISTS pedidos;
CREATE TABLE pedidos (
    num_pedido INT NOT NULL,
    fecha_pedido DATE NOT NULL,
    clie INT NOT NULL,
    rep INT NOT NULL,
    fab VARCHAR(3) NOT NULL,
    producto VARCHAR(5) NOT NULL,
    cantidad INT,
    importe DECIMAL(8,2),
    UNIQUE UK_num_pedido (num_pedido),
    CONSTRAINT PK_pedidos_num_pedido PRIMARY KEY (num_pedido),
    CONSTRAINT FK_pedidos_clientes_clie_numclie FOREIGN KEY (clie) REFERENCES clientes(num_clie),
    CONSTRAINT FK_pedidos_repventas_rep_numempl FOREIGN KEY (rep) REFERENCES repventas(num_empl),
    CONSTRAINT FK_pedidos_productos_fabproducto_idfabidproducto FOREIGN KEY (fab, producto)     REFERENCES productos(id_fab, id_producto)
);

Gracias por su ayuda :)

sql mysql foreign-keys syntax-error constraints
1个回答
0
投票

repventas 和productos 表怎么样?确保所有外键列与它们引用的主键列具有相同的数据类型。

© www.soinside.com 2019 - 2024. All rights reserved.