1: <?php
2:
3: /**
4: * This file is part of the Nette Framework (http://nette.org)
5: *
6: * Copyright (c) 2004 David Grudl (http://davidgrudl.com)
7: *
8: * For the full copyright and license information, please view
9: * the file license.txt that was distributed with this source code.
10: * @package Nette\Database\Drivers
11: */
12:
13:
14:
15: /**
16: * Supplemental SQLite2 database driver.
17: *
18: * @author David Grudl
19: * @package Nette\Database\Drivers
20: */
21: class Sqlite2Driver extends SqliteDriver
22: {
23:
24: /**
25: * Encodes string for use in a LIKE statement.
26: */
27: public function formatLike($value, $pos)
28: {
29: throw new NotSupportedException;
30: }
31:
32:
33:
34: /**
35: * Normalizes result row.
36: */
37: public function normalizeRow($row, $statement)
38: {
39: if (!is_object($row)) {
40: $iterator = $row;
41: } elseif ($row instanceof Traversable) {
42: $iterator = iterator_to_array($row);
43: } else {
44: $iterator = (array) $row;
45: }
46: foreach ($iterator as $key => $value) {
47: unset($row[$key]);
48: if ($key[0] === '[' || $key[0] === '"') {
49: $key = substr($key, 1, -1);
50: }
51: $row[$key] = $value;
52: }
53: return $row;
54: }
55:
56:
57:
58: /**
59: * Returns metadata for all foreign keys in a table.
60: */
61: public function getForeignKeys($table)
62: {
63: throw new NotSupportedException; // @see http://www.sqlite.org/foreignkeys.html
64: }
65:
66: }
67: