如何编写一个mysql过程来插入数据


How to write a mysql procedure to insert data?

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本身解释。