使用存储过程将两列相乘,并在mysql中插入时将结果放入第三列
我想这样做:使用存储过程将两列相乘,并在mysql中插入时将结果放入第三列,mysql,database,stored-procedures,insert,Mysql,Database,Stored Procedures,Insert,我想这样做: Quantity Price Payment 1 12 12.00 这是我的密码: CREATE DEFINER=`root`@`localhost` PROCEDURE `insertproducts` ( pname varchar(50), pdesc varchar(50), psupp varchar(50), pdate date, pquant int, pprice dou
Quantity Price Payment
1 12 12.00
这是我的密码:
CREATE DEFINER=`root`@`localhost`
PROCEDURE `insertproducts`
(
pname varchar(50),
pdesc varchar(50),
psupp varchar(50),
pdate date,
pquant int,
pprice double
)
begin
insert into products
(
prodname,
proddescription,
prodsupplier,
proddate,
prodquantity,
prodprice,
prodpayment
)
values
(
pname,
pdesc,
psupp,
pdate,
pquant,
pprice,
ppayment
)
set prodpayment = pprice * prodquantity;
end
这不起作用,知道吗?什么是
ppayment
?你可以直接乘以参数
insert into products
(
prodname,
proddescription,
prodsupplier,
proddate,
prodquantity,
prodprice,
prodpayment
)
values
(
pname,
pdesc,
psupp,
pdate,
pquant,
pprice,
pprice*prodquantity
)
这是类似的程序。不管怎样,你的表上有
Amount
列吗?是的,事实上,我有,它不是Amount,而是payment列。如果你想将prodpayment
设置为pprice*prodquantity
,为什么这个过程有一个ppayment
参数?@eggyal:我已经更新了。你的表上设置为唯一的列是什么?