Descrição
resource
mysql_query
( string query [, resource link_identifier [, int result_mode]])
mysql_query(
)
envia
uma
query
para
o
banco
de
dados
ativo
no
servidor
da
conexão
informada
em
link_identifier
.
Se
o
parâmetro
link_identifier
não
é
especificado
,
a
ultima
conexão
aberta
é
usada
.
Se
nenhuma
conexão
esta
aberta
,
a
função
tenta
estabelecer
uma
conexão
como
mysql_connect(
)
seja
chamada
sem
argumentos
e
usa-a
.
O
parâmetro
opcional
result_mode
pode
ser
MYSQL_USE_RESULT
e
MYSQL_STORE_RESULT
.
O
seu
padrão
MYSQL_STORE_RESULT
,
assim
seu
resultado
é
colocado
no
buffer
.
Veja
também
mysql_unbuffered_query(
)
para
a
sua
contrapartida
.
Nota
:
A
string
da
query
não
deve
terminar
com
ponto
e
virgula(
;
)
.
Somente
para
os
comandos
SELECT
,
SHOW
,
EXPLAIN
ou
DESCRIBE
mysql_query(
)
retorna
um
identificador
de
recurso
ou
FALSE
se
a
query
não
foi
executada
corretamente
.
Para
outros
tipos
de
comandos
SQL
,
mysql_query(
)
retorna
TRUE
em
caso
de
sucesso
e
FALSE
em
erro
.
Um
valor
não
FALSE
indica
que
a
query
foi
legal
e
pode
ser
executada
pelo
servidor
.
Não
indica
nada
sobre
o
número
de
linhas
afetadas
ou
retornadas
.
É
perfeitamente
possível
para
uma
query
ser
bem
sucedida
,
mas
não
afetar
linhas
ou
retornar
linhas
.
A
seguinte
query
é
sintaticamente
invalida
,
assim
mysql_query(
)
falha
e
retorna
FALSE
:
Exemplo
1
.
mysql_query(
)
php
$result
=
mysql_query(
"SELECT
*
WHERE
1=1"
)
or
die("Query
invalida
:
"
.
mysql_error())
;
?
|
|
A
seguinte
query
é
semanticamente
invalida
se
my_col
não
é
uma
coluna
da
tabela
my_tbl
,
assim
mysql_query(
)
falha
e
retorna
FALSE
:
Exemplo
2
.
mysql_query(
)
?php
$result
=
mysql_query(
"SELECT
my_col
FROM
my_tbl"
)
or
die
("Query
invalida
:
"
.
mysql_error())
;
?
|
|
mysql_query(
)
irá
também
falhar
e
retornar
FALSE
se
você
não
tiver
permissão
para
acessar
a
tabela(s
)
referida(s
)
pela
query
.
Assumindo
que
a
query
seja
bem
sucedida
,
você
pode
chamar
mysql_num_rows(
)
para
achar
quantas
linhas
foram
retornadas
para
um
comando
SELECT
ou
mysql_affected_rows(
)
para
achar
quantas
linhas
foram
afetadas
por
um
comando
DELETE
,
INSERT
,
REPLACE
,
ou
UPDATE
.
Somente
para
os
comandos
SELECT,SHOW,DESCRIBE
ou
EXPLAIN
,
mysql_query(
)
retorna
um
novo
identificador
de
resultado
que
você
pode
passar
para
mysql_fetch_array(
)
e
outras
funções
que
lidam
com
resultados
de
tabelas
.
Quando
você
terminou
de
usar
o
resultado
você
pode
liberar
os
recursos
usados
chamando
mysql_free_result(
)
.
Embora
a
memória
será
automaticamente
liberada
ao
final
da
execução
do
script
.
Veja
também
:
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(
)
,
and
mysql_connect(
)
.