Popis
resource
mysql_query
( string query [, resource spojeni])
mysql_query(
)
Provede
dotaz
na
aktuálním
spojení
v
aktivní
databázi
na
serveru
a
vrátí
identifikátor
výsledku
.
Není-li
parametr
spojeni
uveden
,
použije
posledně
otevřené
spojení
.
Pokud
není
žádné
otevřené
spojení
nalezeno
,
funkce
se
ho
pokusí
vytvořit
za
použití
výchozích
hodnot
funkce
mysql_connect(
)
(jakoby
byla
volána
bez
parametrů
)
Poznámka
:
Řetězec
dotazu
by
neměl
končit
středníkem
.
Pouze
při
použití
dotazu
typu
SELECT
je
vrácen
identifikátor
výsledku
či
FALSE
pokud
při
vykonávání
dotazu
došlo
k
chybě
.
Při
ostatních
typech
dotazů
mysql_query(
)
vrací
TRUE
při
úspěšném
dotazu
nebo
FALSE
dojde-li
k
chybě
.
Ne
-
FALSE
vrácená
hodnota
znamená
,
že
dotaz
byl
vykonán
serverem
bez
chyb
.
Tato
funkce
nezaznamenává
žádné
údaje
o
počtu
ovlivněných
nebo
vrácených
řádků
.
Lze
pouze
zjistit
,
zda
dotaz
proběhl
v
pořádku
.
Následující
dotaz
je
syntakticky
nesprávný
,
takže
jeho
vykonávání
v
mysql_query(
)
selže
a
vrátí
FALSE
:
Příklad
1
.
mysql_query(
)
php
$result
=
mysql_query(
"SELECT
*
WHERE
1=1"
)
or
die("Špatný
dotaz
!")
;
?
|
|
Následující
dotaz
je
významově
nesprávný
my_col
není
sloupec
v
tabulce
my_tbl
,
takže
mysql_query(
)
selže
a
vrátí
FALSE
:
Příklad
2
.
mysql_query(
)
?php
$result
=
mysql_query(
"SELECT
my_col
FROM
my_tbl"
)
or
exit
("Špatný
dotaz
!")
;
?
|
|
mysql_query(
)
také
vždy
selže
a
vrátí
FALSE
jestliže
nemáte
dostatečné
oprávnění
přístupu
do
tabulky
(tabulek
)
uvedených
v
dotazu
.
Potřebujete-li
zjistit
počet
záznamů
vrácených
dotazem
typu
SELECT
,
použijte
následně
funkci
mysql_num_rows(
)
či
případně
funkci
mysql_affected_rows(
)
,
pokud
potřebujete
zjistit
počet
všech
ovlivněných
záznamů
dotazy
typů
DELETE
,
INSERT
,
REPLACE
nebo
UPDATE
.
Pouze
při
dotazu
typu
SELECT
mysql_query(
)
vrací
nový
identifikátor
dotazu
,
který
lze
použít
například
pro
volání
funkce
mysql_fetch_array(
)
a
dalších
funkcí
pro
zpracování
výsledků
dotazu
.
Nepotřebujete-li
již
obsah
výsledku
dotazu
,
můžete
uvolnit
pamět
voláním
funkce
mysql_free_result(
)
.
Nicméně
pamět
bude
stejně
uvolněna
automaticky
na
konci
běhu
skriptu
.
Viz
.
také
:
mysql_num_rows(
)
mysql_affected_rows(
)
,
mysql_unbuffered_query(
)
,
mysql_free_result(
)
,
mysql_fetch_array(
)
,
mysql_fetch_row(
)
,
mysql_fetch_assoc(
)
,
mysql_result(
)
,
mysql_select_db(
)
,
a
mysql_connect(
)
.