Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/database/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用存储过程将两列相乘,并在mysql中插入时将结果放入第三列_Mysql_Database_Stored Procedures_Insert - Fatal编程技术网

使用存储过程将两列相乘,并在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:我已经更新了。你的表上设置为唯一的列是什么?