Mysql过程INSERT(我已经看了其他答案)

时间:2015-05-30 22:43:22

标签: mysql select stored-procedures

在mysql中我有两个表:produto和dim_produto。

CREATE TABLE `produto` (
  `IdProduto` int(11) NOT NULL AUTO_INCREMENT,
  `Ativo` char(1) DEFAULT 'S',
  `CodPro` int(4) NOT NULL,
  `CodCat` int(4) NOT NULL,
  `DesPro` varchar(45) NOT NULL,
  `CodMar` int(3) NOT NULL,
  `CodSab` int(3) NOT NULL,
  `QtdCaixa` int(2) NOT NULL,
  `Transmitido` char(1) DEFAULT 'N',
  PRIMARY KEY (`IdProduto`,`CodPro`),
  ) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8;

-- 

CREATE TABLE `dim_produto` (
  `CodPro` int(4) NOT NULL,
  `Ativo` char(1) DEFAULT NULL,
  `CodCat` int(4) DEFAULT NULL,
  `Despro` varchar(45) DEFAULT NULL,
  `IdInc` timestamp NULL DEFAULT CURRENT_TIMESTAMP,
  PRIMARY KEY (`CodPro`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

我正在尝试创建一个在表中生成select产品的过程并输入dim_produto表。

DELIMITER |
CREATE PROCEDURE dimProduto (codpro int (4), ativo char (1), codcat int (4), despro varchar (45))
BEGIN
insert into dim_produto (codpro, ativo, codcat, despro) (select codpro, ativo, codcat, despro from produto where transmitido = 'N');
END |

如果我这样插入它在程序中的方式,它就能很好地工作。

当我将它插入选择表dim_produto时,如何调用该过程? 我怎么称呼它?

荷。

0 个答案:

没有答案