(PHP 5 < 5.4.0, PECL sqlite >= 1.0.0)
sqlite_query — Executa uma query em um banco de dados e retorna o manipulador de resultados
$dbhandle
, string $query
[, int $result_type
[, string &$error_msg
]] )$query
, resource $dbhandle
[, int $result_type
[, string &$error_msg
]] )Modo orientado a objeto (método):
$query
[, int $result_type
[, string &$error_msg
]] )
Executa uma SQL indicada pelo parâmetro query
com
um banco de dados.
dbhandle
O resource do banco de dados SQLite; retornado da sqlite_open() quando usado no modo procedural. Este parâmetro não é requerido quando usado o método no modo orientado a objeto.
query
A query a ser executada.
result_type
O parâmetro opcional result_type
aceita uma constante e determina como a matriz retornada será
indexada. Usando SQLITE_ASSOC
irá retornar apenas os índices
associativos (campos com nomes) enquanto SQLITE_NUM
irá retornar
apenas os índices numéricos (campos com números). SQLITE_BOTH
irá retornar ambos os índices, numérico e associativo.
SQLITE_BOTH
é o padrão para esta função.
error_msg
A especificada variável que será preenchida se um erro ocorrer. Isto é especialmente importante porque a os erros de sintaxe SQL não podem ser obtidos usando a função sqlite_last_error().
Nota: Duas sintaxes alternativas são suportaas para compatibilidade com outras extensões de banco de dados( como o MySQL). A forma preferida é a primeira, aonde o parâmetro
dbhandle
é o primeiro parãmetro da função.
Esta função irá retornar um manipulador de resultado ou FALSE
em falha.
Para queries que retornam linhas, o manipulador de resultado pode então ser usado com
funções como sqlite_fetch_array() e
sqlite_seek().
Qualquer que seja o tipo da query, esta função irá retornar FALSE
se
houver uma falha.
sqlite_query() retorna um resultado guardado em buffer e navegavel. Isto é util para query pequenas aonde você necessita acessar de forma aleatória as linhas. Resultados guardados em buffer irão alocar memoria para guardar todo o resultado e não irão retornar até que todo o resultado tenha sido retornado. Se você necessita apenas acesso sequencial aos dados, é recomendado que você use ao invés a função sqlite_unbuffered_query() que é muito mais rapida.
Versão | Descrição |
---|---|
5.1.0 |
Adicionado o parâmetro error_msg
|
SQLite irá executar multiplas query separadas por ponto e virgula, assimvocê pode executar um lote de SQL que você tenha carregado de um arquivo ou colocado em um script. Entretando, isto funciona apenas quando o resultado de uma função não é usado - se for usado, apenas o primeiro comando SQL será executado. A função sqlite_exec() irá sempre executar multiplos comandos SQL.
Quando executar multiplas query o valor de retorno desta função será
FALSE
se houver um erro, mas indefinido em outro caso (pode ser
TRUE
para sucesso ou retornar um conjunto de resultados).