繁体   English   中英

如何在mysql中形成一个存储过程,可以先检查多个表上的多个值,如果为真则插入db

how can I form a stored procedure in mysql, which can first check multiple values on multiple tables and then insert into db if true

提示:本站收集StackOverFlow近2千万问答,支持中英文搜索,鼠标放在语句上弹窗显示对应的参考中文或英文, 本站还提供   中文繁体   英文版本   中英对照 版本,有任何建议请联系yoyou2525@163.com。

实际的问题陈述如下所示:

• 产品(prod_id、prod_name、qty_on_hand)

• 订单(cust_id、prod_id、order_date、qty_ordered)

• 客户(cust_id、cust_name、电话、地址)

“编写一个存储过程以将 cust_id、prod_id 和 qty_ordered 作为输入。程序应检查是否可以完成特定客户的订单,如果是,则插入新订单并更新手头的产品数量。如果订单无法履行。Output 参数必须具有更新的 qty_on_hand 值"

我是 plsql 的新手,所以忽略愚蠢的错误。 我试图编写这样的代码:

delimiter $$
-- creating procedure
CREATE PROCEDURE order_request( cust_id int,  prod_id int, qty_ordered int)
BEGIN

IF( customer.cust_id != cust_id AND product.prod_id != prod_id AND qty_ordered > product.qty_on_hand) THEN 
SELECT 'invalid details' ;

ELSE INSERT INTO `orders` (`cust_id`, `prod_id`, `order_date`, `qty_ordered`) VALUES (cust_id, prod_id, current_date(), qty_ordered)  ;
 END IF ;
END $$

CALL order_request(3,3,2)$$

这向我显示错误: unknown table customer in field list

问题暂未有回复.您可以查看右边的相关问题.
3 通过存储过程将值插入表中

我正在尝试创建一个存储过程,该存储过程在第一个表更新时将一些数据插入表中。 说明: 我有两个相同的表, Table1和Table2 。 我希望当table 1出现一行更新时,该行的信息也会插入到Table2中。 我在考虑存储过程,但不确定如何。 非常感谢。 顺便说 ...

4 在一个DB2存储过程中声明全局临时表,插入和删除语句

我有一个要求,我将传递成员编号作为输入,并且需要从所有现有表中删除与该成员编号对应的条目。 有人可以在这里指导我吗。 另外,请告知如何使用 DECLARE GLOBAL TEMPORARY TABLE,在一个存储过程中插入和删除。 非常感谢。 ...

2019-10-07 06:26:04 0 22   db2
5 MySQL存储过程,从一个表中读取并插入到另一个表中

我在PHP中有以下代码,我想将其转换为MySQL存储过程。 由于应用程序的要求,我不想在数据库级别的错误代码上检查重复错误,它必须与在PHP中执行的方法相同。 //更新:2015年5月6日。我共有6张桌子。 表1包含邮政编码,城市,州,国家等字段。 这是varchar格式。 ...

9 将值从一个表插入到SQL Server上存储过程中的另一个表中

我的存储过程中有一个临时表。 看起来像这样: 另一个表如下所示: 如何在存储过程中将第二个表中的值放入第一个表的正确列中? (第二个表中的名称和列不是唯一的。例如,可以有更多的aaa NT组合。在这种情况下,必须将这些值相加。) NT,AB列的值来自另一个表。 在VB ...

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2022 STACKOOM.COM