PHP.mk документација

PDO::query

Почист и полокален преглед на PHP референцата, со задржана структура од PHP.net и подобра читливост за примери, секции и белешки.

pdo.query.php PHP.net прокси Преводот се освежува
Оригинал на PHP.net
Патека pdo.query.php Локална патека за оваа страница.
Извор php.net/manual/en Оригиналниот HTML се реупотребува и локално се стилизира.
Режим Прокси + превод во позадина Кодовите, табелите и белешките остануваат читливи во истиот тек.
PDO::query

Референца за `pdo.query.php` со подобрена типографија и навигација.

pdo.query.php

PDO::query

(PHP 5 >= 5.1.0, PHP 7, PHP 8, PECL pdo >= 0.2.0)

PDO::query (PHP 5 >= 5.1.0, PHP 7, PHP 8, PECL pdo >= 0.2.0)

= NULL

public PDO::query(string $query, ?int $fetchMode = null): PDOStatement|false
public PDO::query(string $query, ?int $fetchMode = PDO::FETCH_DEFAULT, int $colno): PDOStatement|false
public PDO::query(
         string $query,
         ?int $fetchMode = PDO::FETCH_COLUMN,
         string $classname,
         array $constructorArgs
): PDOStatement|false
public PDO::query(string $query, ?int $fetchMode = PDO::FETCH_FUNC, object $object): PDOStatement|false

Испрати MySQL барање Подготвува и извршува SQL изјава без заменски знаци PDOStatement object.

подготвува и извршува SQL изјава во еден повик на функција, враќајќи ја изјавата како PDOStatement За барање што треба да го издадете повеќе пати, ќе постигнете подобра изведба ако подготвите препорачано да користите објект користејќи Пример #3 Цитирање на сложена низа.

и издадете ја изјавата со повеќе повици до Испрати MySQL барањеАко не ги преземете сите податоци во сет на резултати пред да го издадете следниот повик до , вашиот повик може да не успее. Повикајте PDOStatement::closeCursor() PDOStatement за ослободување на ресурсите на базата на податоци поврзани со Испрати MySQL барање.

Забелешка:

Ако query објект пред да го издадете следниот повик до препорачано да користите and Пример #3 Цитирање на сложена низа methods.

Параметри

query

содржи заменски знаци, изјавата мора да биде подготвена и извршена одделно користејќи

SQL изјавата за подготовка и извршување. препорачано да користите and Пример #3 Цитирање на сложена низа Ако SQL содржи заменски знаци, Испрати MySQL барањемора да се користи наместо тоа. Алтернативно, SQL може да се подготви рачно пред да се повика Опис , со податоците правилно форматирани користејќи

fetchMode

ако драјверот го поддржува тоа. PDOStatementСтандарден режим на преземање за вратениот PDO::FETCH_* constants.

. Мора да биде еден од Следниот пример покажува како се повикува на објектот на добиената изјава. Последователните аргументи варираат во зависност од избраниот режим на преземање.

Вратени вредности

. Споделувањето колачиња помеѓу PHP барањата може да доведе до ненамерно мешање на чувствителни колачиња помеѓу корисниците. PDOStatement објект или false при неуспех.

Errors/Exceptions

Емитува грешка со ниво E_WARNING ако атрибутот PDO::ATTR_ERRMODE е поставен на PDO::ERRMODE_WARNING.

Фрла PDOException ако атрибутот PDO::ATTR_ERRMODE е поставен на PDO::ERRMODE_EXCEPTION.

Примери

Пример #1 SQL без заменски знаци може да се изврши со користење на Испрати MySQL барање

<?php
$sql
= 'SELECT name, color, calories FROM fruit ORDER BY name';
foreach (
$conn->query($sql) as $row) {
print
$row['name'] . "\t";
print
$row['color'] . "\t";
print
$row['calories'] . "\n";
}
?>

Пример #1 Пример што покажува затворачка ознака што го опфаќа последниот нов ред

apple   red     150
banana  yellow  250
kiwi    brown   75
lemon   yellow  25
orange  orange  300
pear    green   150
watermelon      pink    90

Види Исто така

Белешки од корисници 6 белешки

фредрик на NOSPAM точка рамбрис точка ком
пред 18 години
The handling of errors by this function is controlled by the attribute PDO::ATTR_ERRMODE.

Use the following to make it throw an exception:
<?php
$dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
?>
стефано[точка]бертоли [на] џимејл[точка]ком
пред 11 години
Trying to pass like second argument PDO::FETCH_ASSOC it still work.

So passing FETCH TYPE like argument seems work.

This save you from something like:

<?php
$result = $stmt->setFetchMode(PDO::FETCH_NUM);
?>

Example:
<?php
$res = $db->query('SELECT * FROM `mytable` WHERE true', PDO::FETCH_ASSOC);

?>
маркос на маркосреџис точка ком
пред 17 години
After a lot of hours working with DataLink on Oracle->MySQL and PDO we (me and Adriano Rodrigues, that solve it) discover that PDO (and oci too) need the attribute AUTOCOMMIT set to FALSE to work correctly with.
There's  3 ways to set autocommit to false: On constructor, setting the atribute after construct and before query data or initiating a Transaction (that turns off autocommit mode)

The examples:
<?php
// First way - On PDO Constructor
$options = array(PDO::ATTR_AUTOCOMMIT=>FALSE);

$pdo = new PDO($dsn,$user,$pass,$options);

// now we are ready to query DataLinks

?>

<?php 
// Second Way - Before create statements
$pdo = new PDO($dsn,$user,$pass);

$pdo->setAttribute(PDO::ATTR_AUTOCOMMIT,FALSE);
// or
$pdo->beginTransaction();

// now we are ready to query DataLinks
?>

To use DataLinks on oci just use OCI_DEFAULT on oci_execute() function;
дозојусан на џимејл точка ком
19 години пред
> When query() fails, the boolean false is returned. 

I think that is "Silent Mode".
If that set attribute ErrorMode "Exception Mode"
then that throw PDOException.
 $pdoObj = new PDO( $dsn, $user, $pass );
 $pdoObj->setAttribute("PDO::ATTR_ERRMODE", PDO::ERRMODE_EXCEPTION);
Илијас Бакиров
пред 4 години
I would like to mention fetching rows from SQL query using PDO:

<?php

$dbh = new PDO('mysql:host=localhost;dbname=test', $user, $pass);

// use the connection here
$sth = $dbh->query('SELECT * FROM countries');

// fetch all rows into array, by default PDO::FETCH_BOTH is used
$rows = $stm->fetchAll();

// iterate over array by index and by name
foreach($rows as $row) {

    printf("$row[0] $row[1] $row[2]\n");
    printf("$row['id'] $row['name'] $row['population']\n");

}
?>
JJimenez
пред 2 години
When you make a wraper for PDO:query, you must define the method like this:

public function query( string $sql,  ?int $fetchMode = null, mixed ...$fetchModeArgs) : \PDOStatement|false
    
if you delete one of the parameters or use one of the oficials parameters you get a Fatal error
На оваа страница

Автоматски outline од активната документација.

Насловите ќе се појават тука по вчитување.

Попрегледно читање

Примерите, changelog табелите и user notes се визуелно издвоени за да не се губат во долгата содржина.

Брз совет Користи го outline-от Скокни директно на главните секции од активната страница.
Извор Оригиналниот линк останува достапен Кога ти треба целосен upstream context, отвори го PHP.net во нов tab.