mysql - 使用存储过程插入mysql时,将两列相乘并将结果放入第三列

标签 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 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

这不起作用,有什么想法吗?

最佳答案

什么是p payment?可以直接将参数相乘,

insert into products
(
    prodname, 
    proddescription, 
    prodsupplier, 
    proddate, 
    prodquantity, 
    prodprice, 
    prodpayment
) 
values 
(
    pname, 
    pdesc, 
    psupp, 
    pdate, 
    pquant, 
    pprice, 
    pprice*prodquantity
)

关于mysql - 使用存储过程插入mysql时,将两列相乘并将结果放入第三列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15596655/

相关文章:

php - 来自 textarea 的数组没有为 MySQL 查询(UTF8?)正确地换行?

mysql - 多行COUNT查询

mysql - 获取重复记录以显示在同一行中

php - 基于存储在 Json 文件中的元数据创建数据库模式的 PHP 项目的名称?

MySQL 程序无法正常运行

php - 如何防止 PHP 中的 SQL 注入(inject)?

java - 我如何使用Java从Mysql DB中的表中获取所有数据

php - 创建一个在模板上显示 ID 信息的页面

mysql - 如何在mysql工作台中创建存储过程?

stored-procedures - 使用 ORMLite 和输出参数的 ServiceStack MARS(多个事件结果集)