改进Query类缓存更新 修正Connection类一处可能的错误

This commit is contained in:
thinkphp
2017-02-09 17:49:47 +08:00
parent 0d48f4a80c
commit 1e1f36eb40
2 changed files with 8 additions and 2 deletions

View File

@@ -365,8 +365,8 @@ abstract class Connection
$this->bind = $bind; $this->bind = $bind;
} }
//释放前次的查询结果 // 释放前次的查询结果
if (!empty($this->PDOStatement) && $this->PDOStatement->queryString != $sql) { if (!empty($this->PDOStatement)) {
$this->free(); $this->free();
} }

View File

@@ -2204,6 +2204,8 @@ class Query
if (isset($key) && Cache::get($key)) { if (isset($key) && Cache::get($key)) {
// 删除缓存 // 删除缓存
Cache::rm($key); Cache::rm($key);
} elseif (!empty($options['cache']['tag'])) {
Cache::clear($options['cache']['tag']);
} }
// 执行操作 // 执行操作
$result = '' == $sql ? 0 : $this->execute($sql, $bind); $result = '' == $sql ? 0 : $this->execute($sql, $bind);
@@ -2377,6 +2379,8 @@ class Query
} }
if (isset($data)) { if (isset($data)) {
return 'think:' . $options['table'] . '|' . $data; return 'think:' . $options['table'] . '|' . $data;
} else {
return md5(serialize($options));
} }
} }
@@ -2648,6 +2652,8 @@ class Query
if (isset($key) && Cache::get($key)) { if (isset($key) && Cache::get($key)) {
// 删除缓存 // 删除缓存
Cache::rm($key); Cache::rm($key);
} elseif (!empty($options['cache']['tag'])) {
Cache::clear($options['cache']['tag']);
} }
// 执行操作 // 执行操作
$result = $this->execute($sql, $bind); $result = $this->execute($sql, $bind);