1: <?php
2:
3: /**
4: * This file is part of the Nette Framework (http://nette.org)
5: *
6: * Copyright (c) 2004, 2011 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
11: */
12:
13:
14:
15: /**
16: * Supplemental PDO database driver.
17: *
18: * @author David Grudl
19: * @package Nette\Database
20: */
21: interface ISupplementalDriver
22: {
23:
24: /**
25: * Delimites identifier for use in a SQL statement.
26: * @param string
27: * @return string
28: */
29: function delimite($name);
30:
31: /**
32: * Formats date-time for use in a SQL statement.
33: * @param DateTime
34: * @return string
35: */
36: function formatDateTime(DateTime $value);
37:
38: /**
39: * Encodes string for use in a LIKE statement.
40: * @param string
41: * @param int
42: * @return string
43: */
44: function formatLike($value, $pos);
45:
46: /**
47: * Injects LIMIT/OFFSET to the SQL query.
48: * @param string SQL query that will be modified.
49: * @param int
50: * @param int
51: * @return void
52: */
53: function applyLimit(&$sql, $limit, $offset);
54:
55: /**
56: * Normalizes result row.
57: * @param array
58: * @param Statement
59: * @return array
60: */
61: function normalizeRow($row, $statement);
62:
63: }
64: