Dialect.php
2.81 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
<?php
namespace Phalcon\Db {
/**
* Phalcon\Db\Dialect
*
* This is the base class to each database dialect. This implements
* common methods to transform intermediate code into its RDBM related syntax
*/
abstract class Dialect {
protected $_escapeChar;
/**
* Generates the SQL for LIMIT clause
*
*<code>
* $sql = $dialect->limit('SELECT * FROM robots', 10);
* echo $sql; // SELECT * FROM robots LIMIT 10
*</code>
*
* @param string $sqlQuery
* @param int $number
* @return string
*/
public function limit($sqlQuery, $number){ }
/**
* Returns a SQL modified with a FOR UPDATE clause
*
*<code>
* $sql = $dialect->forUpdate('SELECT * FROM robots');
* echo $sql; // SELECT * FROM robots FOR UPDATE
*</code>
*
* @param string $sqlQuery
* @return string
*/
public function forUpdate($sqlQuery){ }
/**
* Returns a SQL modified with a LOCK IN SHARE MODE clause
*
*<code>
* $sql = $dialect->sharedLock('SELECT * FROM robots');
* echo $sql; // SELECT * FROM robots LOCK IN SHARE MODE
*</code>
*
* @param string $sqlQuery
* @return string
*/
public function sharedLock($sqlQuery){ }
/**
* Gets a list of columns with escaped identifiers
*
*<code>
* echo $dialect->getColumnList(array('column1', 'column'));
*</code>
*
* @param array $columnList
* @return string
*/
public function getColumnList($columnList){ }
/**
* Transforms an intermediate representation for a expression into a database system valid expression
*
* @param array $expression
* @param string $escapeChar
* @return string
*/
public function getSqlExpression($expression, $escapeChar=null){ }
/**
* Transform an intermediate representation for a schema/table into a database system valid expression
*
* @param array $table
* @param string $escapeChar
* @return string
*/
public function getSqlTable($table, $escapeChar=null){ }
/**
* Builds a SELECT statement
*
* @param array $definition
* @return string
*/
public function select($definition){ }
/**
* Checks whether the platform supports savepoints
*
* @return boolean
*/
public function supportsSavepoints(){ }
/**
* Checks whether the platform supports releasing savepoints.
*
* @return boolean
*/
public function supportsReleaseSavepoints(){ }
/**
* Generate SQL to create a new savepoint
*
* @param string $name
* @return string
*/
public function createSavepoint($name){ }
/**
* Generate SQL to release a savepoint
*
* @param string $name
* @return string
*/
public function releaseSavepoint($name){ }
/**
* Generate SQL to rollback a savepoint
*
* @param string $name
* @return string
*/
public function rollbackSavepoint($name){ }
}
}