sexta-feira, 29 de janeiro de 2010

Seleção do banco de dados em PHP

Seleção do banco de dados

$conexao = mysql_connect(“localhost”, “root”, “phppwd”);
Assim, se a conexão for bem sucedida (existir um servidor no endereço especificado que possua o usuário com a senha fornecida), o identificador da conexão fica armazenado na variável $conexão.
Seleção do banco de dados
Uma vez conectado, é preciso selecionar o banco de dados existente no servidor com o qual desejamos trabalhar. Isso é feito através da função int mysql_select_db, que possui a seguinte sintaxe:
int mysql_select_db(string /*nome_base*/, int /*conexao*/ );
O valor de retorno é 0 se o comando falhar, e 1 em caso de sucesso. O nome da base de dados a selecionar é o primeiro parâmetro fornecido, seguido pelo identificador da conexão. Se este for omitido, o interpretador PHP tentará utilizar a última conexão estabelecida. Recomenda-se sempre explicitar esse valor, para facilitar a legibilidade do código. No nosso exemplo, a base de dados a ser selecionada possui o nome “ged”:
mysql_select_db(“ged”, $conexao);
Após a execução desse comando qualquer consulta executada para aquela conexão utilizará a base de dados selecionada.
Execução de queries SQL
Após estabelecida a conexão e selecionada a base de dados a ser utilizada, quase toda a interação com o servidor mySQL pode ser feita através de consultas escritas em SQL (Structured Query Language), com o comando mysql_query, que utiliza a seguinte sintaxe:
int mysql_query(string consulta, int [conexao] );
O valor de retorno é 0 se falhar ou 1 em caso de sucesso. Sucesso aqui significa que a consulta está sintaticamente correta e foi executada no servidor. Nenhuma informação sobre o resultado é retornada deste comando, ou até mesmo se o resultado é o esperado. No caso da consulta ser um comando SELECT, o valor de retorno é um valor interno que identifica o resultado, que poderá ser tratado com a função mysql_result() e outras. A string query não deve conter ponto-e-vírgula no final do comando, e o identificador da conexão é opcional. Vamos criar uma tabela como exemplo:
$cria = “CREATE TABLE exemplo (codigo INT AUTO_INCREMENT PRIMARY KEY, nome CHAR(40), email CHAR(50))”;
mysql_query($cria, $conexao);
Agora vejamos como ficou o código completo para executar uma query SQL numa base de dados mySQL, com um exemplo que cria uma tabela chamada exemplo e adiciona alguns dados:
$conexao = mysql_connect(“localhost”, “root”, “phppwd”);
mysql_select_db(“ged”, $conexao);

$cria = “CREATE TABLE exemplo (codigo INT AUTO_INCREMENT PRIMARY KEY, nome CHAR(40), email CHAR(50))”;

$insere1 = “INSERT INTO exemplo (nome,email) VALUES (“Mauricio Vivas”,”vivas@usa.net”);

$insere2 = “INSERT INTO exemplo (nome,email) VALUES (“Jose da Silva”,”jose@teste.com”);

$insere3 = “INSERT INTO exemplo (nome,email) VALUES (“Fernando Henrique Cardoso”,”fhc@planalto.gov.br”);

$insere4 = “INSERT INTO exemplo (nome,email) VALUES (“Bill Clinton”,”president@whitehouse.gov”);

mysql_query($cria, $conexao);
mysql_query($insere1, $conexao);
mysql_query($insere2, $conexao);
mysql_query($insere3, $conexao);
mysql_query($insere4, $conexao);
Tratamento de resultados de query SELECT
Ao executar uma query SQL SELECT através do comando mysql_query, o identificador do resultado deve ser armazenado numa variável que pode ser tratada de diversas formas. Duas maneiras interessantes de fazê-lo usam o comando mysql_result e o comando mysql_fetch_row, respectivamente.
O comando mysql_result tem a seguinte sintaxe:
int mysql_result(int resultado, int linha, mixed [campo]);

Nenhum comentário:

Postar um comentário