Dutch PHP Conference 2025 - Call For Papers

cubrid_query

(PECL CUBRID >= 8.3.1)

cubrid_queryEnvia uma consulta CUBRID

Descrição

cubrid_query(string $query, resource $conn_identifier = ?): resource

cubrid_query() envia uma consulta única (consultas múltiplas não são suportadas) para o banco de dados atualmente ativo no servidor que está associado ao conn_identifier especificado.

Parâmetros

query

Uma consulta SQL

Dados na consulta devem estar adequadamente escapados.

conn_identifier

A conexão CUBRID. Se o identificador de conexão não for especificado, a última conexão aberta por cubrid_connect() será usada.

Valor Retornado

Para SELECT, SHOW, DESCRIBE, EXPLAIN e outras instruções que retornam um conjunto de resultados, cubrid_query() retorna um resource em caso de sucesso ou false em caso de erro.

Para outros tipos de instruções SQL como INSERT, UPDATE, DELETE, DROP, etc., cubrid_query() retorna true em caso de sucesso ou false em caso de erro.

O recurso de resultado retornado deve ser passado para cubrid_fetch_array() e outras funções para lidar com tabelas de resultados, para acessar os dados retornados.

Use cubrid_num_rows() para descobrir quantas linhas foram retornadas para uma instrução SELECT ou cubrid_affected_rows() para descobrir quantas linhas foram afetadas por uma instrução DELETE, INSERT, REPLACE ou UPDATE.

cubrid_query() também falhará e retornará false se o usuário não tiver permissão para acessar as tabelas referenciadas pela consulta.

Exemplos

Exemplo #1 Consulta Inválida

A consulta a seguir é sintaticamente inválida, portanto cubrid_query() falhará e retornará false.

<?php
$conn
= cubrid_connect('localhost', 33000, 'demodb');

$result = cubrid_query('SELECT * WHERE 1=1');
if (!
$result) {
die(
'Consulta inválida: ' . cubrid_error());
}

?>

Exemplo #2 Consulta Válida

A consulta a seguir é válida, portanto cubrid_query() retornará um resource.

<?php
// Isso pode ser fornecido por um usuário, por exemplo
$firstname = 'fred';
$lastname = 'fox';

$conn = cubrid_connect('localhost', 33000, 'demodb');

cubrid_execute($conn,"DROP TABLE if exists friends");
cubrid_execute($conn,"create table friends(firstname varchar,lastname varchar,address char(24),age int)");
cubrid_execute($conn,"insert into friends values('fred','fox','home-1','20')");
cubrid_execute($conn,"insert into friends values('blue','cat','home-2','21')");
// Formula a consulta
// Esta é a melhor maneira de realizar uma consulta SQL
// Para mais exemplos, consulte cubrid_real_escape_string()
$query = sprintf("SELECT firstname, lastname, address, age FROM friends WHERE firstname='%s' AND lastname='%s'",
cubrid_real_escape_string($firstname),
cubrid_real_escape_string($lastname));

// Executa a consulta
$result = cubrid_query($query);

// Verifica o resultado
// Isso mostra a consulta real enviada ao CUBRID e o erro. Útil para depuração.
if (!$result) {
$message = 'Consulta inválida: ' . cubrid_error() . "\n";
$message .= 'Consulta completa: ' . $query;
die(
$message);
}

// Usa o resultado
// A tentativa de mostrar $result diretamente não permitirá acesso às informações do recurso
// Uma das funções de resultado cubrid deve ser usada
// Consulte também cubrid_result(), cubrid_fetch_array(), cubrid_fetch_row(), etc.
while ($row = cubrid_fetch_assoc($result)) {
echo
$row['firstname'];
echo
$row['lastname'];
echo
$row['address'];
echo
$row['age'];
}

// Libera os recursos associados ao conjunto de resultados
// Isso é feito automaticamente no final do script
cubrid_free_result($result);
?>

Veja Também

add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top