public function excute() { $config = $this->_objDispatcher->getBootstrap()->getConfig(); $dbName = 'test'; $dbConf = $config->get('database', $dbName); $conn = \Aha\Storage\Db\Pool::getConnection($dbName, $dbConf); $conn->query("select * from friends limit 10", array($this, 'QueryDbCallback')); }
public function excute() { $config = $this->_objDispatcher->getBootstrap()->getConfig(); $dbName = 'test'; $dbConf = $config->get('database', $dbName); $conn = \Aha\Storage\Db\Pool::getConnection($dbName, $dbConf); $conn->beginTrans()->queue('user', 'insert into user set name="Aha",phone="15801228065"')->queue('friends', function ($result) { $friendId = intval($result['user']['last_insert_id']); $sql = 'insert into friends set user_id=6,friend_id=' . $friendId; return $sql; })->setCallback(array($this, 'QueryDbCallback'))->execute(); }
public function dbTrans($dispatcher) { $config = $dispatcher->getBootstrap()->getConfig(); $dbName = 'test'; $dbConf = $config->get('database', $dbName); $conn = \Aha\Storage\Db\Pool::getConnection($dbName, $dbConf); $trans = $conn->beginTrans()->queue('user', 'insert into user set name="Aha",phone="15801228065"')->queue('friends', function ($result) { $friendId = intval($result['user']['last_insert_id']); $sql = 'insert into friends set user_id=6,friend_id=' . $friendId; return $sql; })->queue('friendsPlus', 'insert into friends set user_id=100000,friend_id=1000000'); $ret = (yield $trans); (yield $ret); }
public function doTask($content) { $package = $content['content']; $config = $this->_objAha->getConfig(); $dbName = 'test'; $dbConf = $config->get('database', $dbName); $conn = \Aha\Storage\Db\Pool::getConnection($dbName, $dbConf); $trans = $conn->beginTrans(); $friendId = $package['friend_id']; foreach ($package['users'] as $user) { $trans->queue($user['id'], "insert into friends set user_id=" . $user['id'] . ",friend_id={$friendId}"); } $ret = (yield $trans); if (!isset($ret['result']) || false === $ret['result']) { (yield false); } else { (yield true); } }