MIOLO20
Carregando...
Procurando...
Nenhuma entrada encontrada
RunSqlCommand.php
Ir para a documentação deste ficheiro.
1
<?php
2
/*
3
* $Id$
4
*
5
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
6
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
7
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
8
* A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
9
* OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
10
* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
11
* LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
12
* DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
13
* THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
14
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
15
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
16
*
17
* This software consists of voluntary contributions made by many individuals
18
* and is licensed under the LGPL. For more information, see
19
* <http://www.doctrine-project.org>.
20
*/
21
22
namespace
Doctrine\DBAL\Tools\Console\Command
;
23
24
use
Symfony\Component\Console\Input\InputArgument
,
25
Symfony\Component\Console\Input\InputOption
,
26
Symfony\Component\Console
;
27
41
class
RunSqlCommand
extends
Console\Command\Command
42
{
46
protected
function
configure
()
47
{
48
$this
49
->setName(
'dbal:run-sql'
)
50
->setDescription(
'Executes arbitrary SQL directly from the command line.'
)
51
->setDefinition(array(
52
new
InputArgument
(
'sql'
, InputArgument::REQUIRED,
'The SQL statement to execute.'
),
53
new
InputOption
(
'depth'
,
null
, InputOption::VALUE_REQUIRED,
'Dumping depth of result set.'
, 7)
54
))
55
->setHelp(<<<EOT
56
Executes arbitrary SQL directly from the command line.
57
EOT
58
);
59
}
60
64
protected
function
execute
(Console\Input\InputInterface $input, Console\
Output
\
OutputInterface
$output)
65
{
66
$conn = $this->
getHelper
(
'db'
)->getConnection();
67
68
if
(($sql = $input->getArgument(
'sql'
)) ===
null
) {
69
throw
new \RuntimeException(
"Argument 'SQL' is required in order to execute this command correctly."
);
70
}
71
72
$depth = $input->getOption(
'depth'
);
73
74
if
( ! is_numeric($depth)) {
75
throw
new \LogicException(
"Option 'depth' must contains an integer value"
);
76
}
77
78
if
(preg_match(
'/^select/i'
, $sql)) {
79
$resultSet = $conn->fetchAll($sql);
80
}
else
{
81
$resultSet = $conn->executeUpdate($sql);
82
}
83
84
\Doctrine\Common\Util\Debug::dump($resultSet, (
int
) $depth);
85
}
86
}
Doctrine\DBAL\Tools\Console\Command\RunSqlCommand
Definição
RunSqlCommand.php:42
Doctrine\DBAL\Tools\Console\Command\RunSqlCommand\execute
execute(Console\Input\InputInterface $input, Console\Output\OutputInterface $output)
Definição
RunSqlCommand.php:64
Doctrine\DBAL\Tools\Console\Command\RunSqlCommand\configure
configure()
Definição
RunSqlCommand.php:46
Symfony\Component\Console\Command\Command
Definição
Command.php:27
Symfony\Component\Console\Command\Command\getHelper
getHelper($name)
Definição
Command.php:428
Symfony\Component\Console\Input\InputArgument
Definição
InputArgument.php:20
Symfony\Component\Console\Input\InputOption
Definição
InputOption.php:20
Symfony\Component\Console\Output\Output
Definição
Output.php:26
Symfony\Component\Console\Output\OutputInterface
Definição
OutputInterface.php:20
Doctrine\DBAL\Tools\Console\Command
Definição
ImportCommand.php:22
Symfony\Component\Console
Definição
Application.php:3
classes
extensions
doctrine-dbal
Doctrine
DBAL
Tools
Console
Command
RunSqlCommand.php
Gerado por
1.10.0