2017-03-04 25 views
0

如何在单个程序中编写多个插入查询?如何在单个过程中编写多个Insert查询?

CREATE DEFINER=`root`@`localhost` PROCEDURE `Proc_Insert`(IN `newt` VARCHAR(500), IN `news` TEXT, IN `status` VARCHAR(500), IN `ntype` VARCHAR(500), IN `img_file` VARCHAR(1500), IN `vlink` VARCHAR(500)) 
INSERT INTO tbl_news(newt, news, status, ntype) VALUES (newt,news,status,ntype); 
SET LID = LAST_INSERT_ID(); 
INSERT INTO tbl_img(pic, cid, imgfile, imgtype, imgstatus) VALUES (LID,LID,img_file,ntype,status); 
INSERT INTO tbl_video(cid, vlink, vdis, vstatus) VALUES (LID,v_link,news,status); 

这是我第一次使用这个存储过程。

+0

你是什么DBMS? MySQL或SQL服务器? – Hadi

+0

这显然不是SQL Server。 – shawnt00

+0

我正在使用我的Mysql。 –

回答

0

时,必须将与beginend的发言,并添加你想要的所有语句:

DELIMITER $$ 
CREATE PROCEDURE `Proc_Insert`(IN `newt` VARCHAR(500), IN `news` TEXT, IN `status` VARCHAR(500), IN `ntype` VARCHAR(500), IN `img_file` VARCHAR(1500), IN `vlink` VARCHAR(500)) 
BEGIN 
    DECLARE LID INT; 

    INSERT INTO tbl_news(newt, news, status, ntype) VALUES (newt,news,status,ntype); 
    SET LID = LAST_INSERT_ID(); 
    INSERT INTO tbl_img(pic, cid, imgfile, imgtype, imgstatus) VALUES (LID,LID,img_file,ntype,status); 
    INSERT INTO tbl_video(cid, vlink, vdis, vstatus) VALUES (LID,v_link,news,status); 
END$$ 
+0

我尝试过但是错误... –

+0

什么是错误?如果它发生在runctime或者创作时间。 –

相关问题