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
|
<?php
namespace Illuminate\Database;
use PDO; use Illuminate\Database\Schema\MySqlBuilder; use Illuminate\Database\Query\Processors\MySqlProcessor; use Doctrine\DBAL\Driver\PDOMySql\Driver as DoctrineDriver; use Illuminate\Database\Query\Grammars\MySqlGrammar as QueryGrammar; use Illuminate\Database\Schema\Grammars\MySqlGrammar as SchemaGrammar;
class MySqlConnection extends Connection { /** * Get a schema builder instance for the connection. * * @return \Illuminate\Database\Schema\MySqlBuilder */ public function getSchemaBuilder() { if (is_null($this->schemaGrammar)) { $this->useDefaultSchemaGrammar(); }
return new MySqlBuilder($this); }
/** * Get the default query grammar instance. * * @return \Illuminate\Database\Query\Grammars\MySqlGrammar */ protected function getDefaultQueryGrammar() { return $this->withTablePrefix(new QueryGrammar); }
/** * Get the default schema grammar instance. * * @return \Illuminate\Database\Schema\Grammars\MySqlGrammar */ protected function getDefaultSchemaGrammar() { return $this->withTablePrefix(new SchemaGrammar); }
/** * Get the default post processor instance. * * @return \Illuminate\Database\Query\Processors\MySqlProcessor */ protected function getDefaultPostProcessor() { return new MySqlProcessor; }
/** * Get the Doctrine DBAL driver. * * @return \Doctrine\DBAL\Driver\PDOMySql\Driver */ protected function getDoctrineDriver() { return new DoctrineDriver; }
/** * Bind values to their parameters in the given statement. * * @param \PDOStatement $statement * @param array $bindings * @return void */ public function bindValues($statement, $bindings) { foreach ($bindings as $key => $value) { $statement->bindValue( is_string($key) ? $key : $key + 1, $value, is_int($value) || is_float($value) ? PDO::PARAM_INT : PDO::PARAM_STR ); } } }
|