diff options
Diffstat (limited to 'vendor/PicoDb/Drivers/Sqlite.php')
-rw-r--r-- | vendor/PicoDb/Drivers/Sqlite.php | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/vendor/PicoDb/Drivers/Sqlite.php b/vendor/PicoDb/Drivers/Sqlite.php new file mode 100644 index 00000000..6555e73d --- /dev/null +++ b/vendor/PicoDb/Drivers/Sqlite.php @@ -0,0 +1,48 @@ +<?php + +namespace PicoDb; + +class Sqlite extends \PDO { + + + public function __construct($filename) + { + parent::__construct('sqlite:'.$filename); + + $this->exec('PRAGMA foreign_keys = ON'); + } + + + public function getSchemaVersion() + { + $rq = $this->prepare('PRAGMA user_version'); + $rq->execute(); + $result = $rq->fetch(\PDO::FETCH_ASSOC); + + if (isset($result['user_version'])) { + + return $result['user_version']; + } + + return 0; + } + + + public function setSchemaVersion($version) + { + $this->exec('PRAGMA user_version='.$version); + } + + + public function getLastId() + { + return $this->lastInsertId(); + } + + + public function escapeIdentifier($value) + { + if (strpos($value, '.') !== false) return $value; + return '"'.$value.'"'; + } +}
\ No newline at end of file |