【发布时间】:2015-03-02 14:39:35
【问题描述】:
请帮助我的数据库设计或 sql 优化: 我有两张表 stock 和 stock_tally。 stock 表包含项目列表,而 stock_tally 包含项目的所有交易。
My Queries?
添加新产品
将产品添加到库存表
将相同添加到 stock_tally
发行产品
- 从库存表中删除库存
- 在此处输入代码从库存表中检索 stock_level
- 将 stock_level 和要发出的数量添加到 stock_tally 中
问题代码
try{
$this->db->beginTransaction();
$q1 = $this->db->prepare("UPDATE stock SET stock_level =? where id=?");
$res1 = $q1->execute(array($qty, $id ));
$q2 = $this->db->prepare("SELECT * FROM stock WHERE id= ?");
$q2->bindValue(1, $id);
$q2->execute();
$res2 = $q2->fetch();
$q3 = $this->db->prepare("INSERT INTO stock_TALLY (id_fk, stocl_level, issues, update) VALUES (?,?,?,?)" );
$res3 = $q1->execute(array($id,$res2,0, $qty));
if($res2 && $res3){
$this->db->commit();
return true;
}
}catch(PDOException $e){
$this->db->rollBack(); //echo $e->getMessage();
return false;
}
【问题讨论】:
-
这不是此类问题的网站。这看起来像是一项家庭作业。 StackOverflow 是一个网站,用于询问您在使用一段代码时遇到的特定问题,而不是为您编写代码。你试过什么?你得到什么错误?您的结果与您预期的结果有何不同?
-
好吧,我的代码运行良好。我只觉得应该有一个更好的逻辑来完成它。而不是这个我的三倍。不过我是初学者。
标签: php mysql sql database pdo