1

MySQL で次のテーブルを作成しました。

CREATE TABLE Compras(
    Compra              INT               NOT NULL,
    Proveedor           INT               NOT NULL,
    FormaDePago         varchar(10),
    Saldo               DECIMAL(15, 3),
    Fecha_Compra        DATE              NOT NULL,
    Condicion_Compra    VARCHAR(10)       NOT NULL,
    Deposito            INT               NOT NULL,
    PRIMARY KEY (Compra)
)ENGINE=MYISAM;

次のストアド プロシージャを作成しようとすると、エラーが発生します。

CREATE PROCEDURE comprarx(IN pk INT, 
                         IN proveedor INT,
                         IN pago varchar(10),
                         IN saldo decimal(15,3),
                         IN fecha DATE,
                         IN condicion_compra varchar(10),
                         IN deposito INT)
BEGIN
    INSERT INTO Compras
    VALUES(pk, proveedor, pago, saldo, fecha, condicion_compra, deposito );
END

私は私の間違いが何であるか分かりません。

4

1 に答える 1

3

を除いて、コードにエラーは見られませんDELIMITER。これを試して、

DELIMITER $$

CREATE PROCEDURE comprar(IN pk INT, 
                         IN proveedor INT,
                         IN pago varchar(20),
                         IN saldo INT,
                         IN fecha DATE,
                         IN condicion_compra varchar(10),
                         IN deposito INT)
BEGIN

        INSERT INTO Compras
        VALUES(pk, proveedor, pago, saldo, fecha, condicion_compra, deposito );

END $$

DELIMITER ;
于 2013-05-30T00:08:37.877 に答える