mysql数据库存储过程怎么写
创建存储过程
创新互联建站网站建设公司,提供成都网站制作、网站设计,网页设计,建网站,PHP网站建设等专业做网站服务;可快速的进行网站开发网页制作和功能扩展;专业做搜索引擎喜爱的网站,是专业的做网站团队,希望更多企业前来合作!
mysql delimiter $ -- delimiter $是设置 $为命令终止符号,代替默认的分号,因为分号有其他用处.
mysql create procedure sp_test(IN pi_id int, OUT po_name varchar(10))
- begin
- select * from test.tb_test;
- select tb_test.name into po_name from test.tb_test where tb_test.id = pi_id;
- end
- $
Query OK, 0 rows affected (0.00 sec)
mysql delimiter ; -- 恢复分号作为分隔终止符号
5.调用存储过程
mysql set @po_name='';
Query OK, 0 rows affected (0.00 sec)
mysql call sp_test(1,@po_name);
我在用mysql做一个库存的数据库!我想在入库表了添加一条数据后触发库存表的数量属性与插入的相同属性相加
CREATE
TRIGGER `入库表` AFTER INSERT ON `入库表`
FOR EACH ROW BEGIN
CALL MyFun(new.lsh);
END IF;
END;
然后写一个存储过程
DELIMITER $$
USE `yourdatabase`$$
DROP PROCEDURE IF EXISTS `MyFun`$$
CREATE DEFINER=`root`@`localhost` PROCEDURE `MyFun`(IN clsh CHAR(16))
BEGIN
DECLARE totle, num1,num2 int;
declare bh char(16);
SELECT 数量 INTO num1 FROM 入库表 WHERE 入库编号=clsh;
SELECT 物料编号 into bh FROM 入库表 WHERE 入库编号=clsh;
SELECT 数量 INTO num2 FROM 库存表 WHERE 物料编号=bh;
set totle=num1+num2;
update 库存表 set 数量=totle WHERE 物料编号=bh;
END$$
DELIMITER ;
大概就是这样,里面的中文改成你对应的表和字段,然后你可以在存储过程里面加上异常处理,比如编号重复等。
mysql减库存语句要怎么写
找到库存表,找到库存数量的字段,用语句修改库存数量的值即可。
如:库存表:stock 库存数量字段:nums
update stock set nums = nums + 1 where sku_id = 10 (修改sku_id为10的纪录,将数量在原基础上加1)
注意:1.正式数据库不要随意改动 2.update语句中尽量加上where条件,即便条件是where 1=1(养成这个习惯),有句话这样说,update语句如果不加where条件生孩子会没屁眼????
文章标题:mysql库存怎么写,mysql怎么存储的
网页网址:http://scyingshan.cn/article/dsihhje.html