CREATE PROCEDURE dasd (
IN aSupplierID varchar(4),
IN aSupplierName varchar(100),
IN aSupplierAddress varchar(255),
IN aSupplierTelPhone varchar(10))
BEGIN
insert
into
supplier
(SupplierID,SupplierName,SupplierAddress,SupplierTelPhone)
values
(aSupplierID,aSupplierName,aSupplierAddress,aSupplierTelPhone);
END
我发现一个错误在行'值(aSupplierID,aSupplierName,aSupplierAddress,aSupplierTelPhone);结束"。
请尝试以下一个
CREATE PROCEDURE dasd (
IN aSupplierID varchar(4),
IN aSupplierName varchar(100),
IN aSupplierAddress varchar(255),
IN aSupplierTelPhone varchar(10))
BEGIN
insert
into
supplier
(SupplierID,SupplierName,SupplierAddress,SupplierTelPhone)
values
(in_aSupplierID,in_aSupplierName,in_aSupplierAddress,in_aSupplierTelPhone);
END
试试这个
DELIMITER $$
CREATE PROCEDURE das1d (
IN aSupplierID VARCHAR(4),
IN aSupplierName VARCHAR(100),
IN aSupplierAddress VARCHAR(255),
IN aSupplierTelPhone VARCHAR(10))
BEGIN
INSERT
INTO
supplier
(SupplierID,SupplierName,SupplierAddress,SupplierTelPhone)
VALUES
(aSupplierID,aSupplierName,aSupplierAddress,aSupplierTelPhone);
END$$
DELIMITER ;
分隔符更改为$$,以使整个定义作为单个语句传递给服务器,然后恢复为;在调用过程之前。这使得;在过程体中使用分隔符,传递给服务器,而不是由mysql本身解释。