Funções básicas do MySQL – Iniciantes

Posted by Bento | Posted in Banco de Dados, MySQL | Posted on 24-08-2010-05-2008

5

As funções do MySQL podem ser divididas nos seguintes tipos: numericas, lógica, manipulação string, e funções de data e hora.

Funções numéricas

Iniciando hoje vou falar sobre funções numéricas que são compostas de operações matemáticas, e deve chamar a função dentro da instrução SQL.

Estou acrescentando esta parte da criação da tabela pela dica do meu xará.. crie uma tabela com o nome precos e insira as linhas conforme SQL abaixo.

CREATE TABLE `precos` (
`col1` INT( 3 ) NOT NULL ,
`col2` INT( 3 ) NOT NULL
) ENGINE =  MYISAM;

INSERT INTO `precos` (`col1` ,`col2`)
VALUES ('2', '4'), ('4', '6'),('5', '9');

Adição

SELECT(col1 + col2) as Resultado FROM precos

Suponhamos que na tabela precos você tenha 3 linhas, conforme abaixo;

col1 col2
2 4
4 6
5 9

Apos fazer a consulta o resultado seria:

Resultado
6
10
14

A consulta somou as linhas separadas, para somar o total das colunas em cada linha, ficaria assim:

SELECT (SUM(col1) + SUM(col2)) as Resultado FROM precos
Resultado
30

Subtração

SELECT(col1 - col2) as Resultado FROM precos

Resultado
-2
-2
-4

Multiplicação


O operador utilizado para mutiplicação é o ( * asterisco).

SELECT(col1 * col2) as Resultado FROM precos

Resultado
8
24
45

Divisão


O operador utilizado para divisão é a ( / barra).

SELECT(col1 / col2) as Resultado FROM precos

Resultado
0.5000
0.6667
0.5556

Se tentar dividir por zero será retornado o valor NULL

Multiplicação


O operador utilizado para mutiplicação é o ( * asterisco).

SELECT(col1 * col2) as Resultado FROM precos

Resultado
8
24
45

Módulo ou MOD


Esta função retorna o restante de dois numeros. Exemplo: 21 / 5 (vinte e um dividido por 5), o resto seria 1

SELECT MOD(21, 5) AS Resultado

Resultado
1

Normalizando seu Banco de dados

Posted by Bento | Posted in Artigos, Banco de Dados, MySQL | Posted on 24-08-2010-05-2008

0

Olá pessoal, hoje vou escrever bem resumido para explicar O que é normalização ?

Normalização é um conjunto de regras que ajuda minimizar problemas de logica.
Ex.. não armazenar os dados de compra junto com os dados dos clientes, pois o mesmo cliente poderá fazer mais de uma compra certo!
A normalização ajuda a tornar o banco de dados mais facil de se entender, basicamente devemos passar por três passos de normalização.
1FN – primeira forma normal, 2NF – segunda forma normal, 3FN – terceira forma normal, e cada formato tem seu proprio conjunto de regras.

Se você tem interesse em banco de dados, é essencial estudar sobre normalização, um abraço a todos.

Comandos básicos do MySQL

Posted by Bento | Posted in Artigos, Banco de Dados, MySQL | Posted on 24-08-2010-05-2008

3

Olá pessoal, resolvi fazer uma pequena lista de alguns comandos que poderá ajudar quem não tem muito costume de usar prompt.

Apos ter instalado o MySQL em seu computador precisamos iniciar o servidor

No linux acesse a pasta do mysql

> cd mysql
> bin/safe_mysqld &

Vai aparecer uma mensagem pedindo o password

> Enter password:

Para entrar no shel do mysql

>mysql -u root -p senha

acima estamos abrindo conexão com o -usuário root e -password senha

//Lista dos comandos básicos
mysql> show databases; //mostra todos banco de dados

mysql > use nome_banco; //seleciona um banco de dados para trabalhar

mysql> show tables; //mostra todas as tabelas do banco selecionado

mysql> desc ou describe // mostra detalhes da tabela, colunas e tipo de dados

mysql> SELECT @ @datadir; //mostra o diretório de dados do mysql
cada banco de dados é separado por uma pasta com o nome do banco

mysql> select count(*) from tabela; //conta quantidade de registros(linhas) da tabela selecionada

mysql> CREATE DATABASE modelo; //cria um banco de dados chamado modelo

mysql > DROP DATABASE modelo; // Exclui o banco de dados chamado modelo e todos os dados dentro dele


Basicamente é isso pessoal, ate a proxima.

Enviando e-mail usando o PHP

Posted by Bento | Posted in Artigos, Desenvolvimento, E-mail, PHP | Posted on 22-08-2010-05-2008

1

Para enviar emails atraves do PHP usamos a função mail(), que depende de alguns parametros obrigatorios como Destinatário, Assunto, Mensagem, e outros opcionais como Cabeçalho para dizer o tipo de codificação da mensagem enviada e formato texto ou HTML.

//criamos e atribuimos dados as váriaveis
$remetente = "Da Duder"; //senders name
$email = "email@adress.com"; //senders e-mail adress

$para = "PersonWhoGetsIt@emailadress.com"; //recipient
$mensagem = "The text for the mail..."; //mail body
$assunto = "Subject for reviever"; //subject
$cabecalho = "From: ". $remetente . " <" . $email . ">rn";
//função mail() que envia o email
mail($para, $assunto, $mensagem, $cabecalho);

http://br2.php.net/manual/pt_BR/book.mail.php

Você pode usar para enviar os dados de um formulário e comados HTML na mensagem.
Também poderá implementar com o comando while para envio de email em massa.

Conexão com FireBird usando PHP

Posted by Bento | Posted in Artigos, Banco de Dados, FireBird | Posted on 09-08-2010-05-2008

14

Bom dia a todos… hoje vou mostrar como conectar no banco de dados firebird usando PHP.
em alguns passos você podera conectar no firebird.

1° Passo – Instale o servidor do firebird
acesse o site http://www.firebirdsql.org/ e faça download do firebird, fiz testes usando o firebird 1.5, 2.0, e 2.5 e todos funcionaram normalmente.
Após instalar o firebird reinicie o computador.

2° Passo – O segundo passo é configurar o PHP. A biblioteca para conexão com o firebird

Localize o arquivo php.ini dentro do diretório de instalação do servidor web (apache), e em seguida abra usando um editor de texto(notepad, edit plus…).

Encontre a linha ;extension=php_interbase.dll e remova o ponto e vírgula no inicio, salve, feche e reinicie o serviço do servidor web.

Caso não encontre a linha, insira no final do arquivo.

3° Passo – Criar a conexão com o FireBird

//ibase_connect — Abre uma conexão com um banco de dados InterBase
//pode ser colocado o IP, ou nome do computador onde esta o banco de dados

$servidor = '127.0.0.1:C:/diretorio/banco.FDB';

//conexão com o banco, se der erro mostrara uma mensagem.
if (!($dbh=ibase_connect($servidor, 'SYSDBA', 'masterkey')))
		die('Erro ao conectar: ' .  ibase_errmsg());

Fazer uma consulta no banco.

//Instruções SQL
$sql = 'SELECT COLUNA1, COLUNA2 FROM TABELA';

//Executa a instrução SQL
$query= ibase_query ($dbh, $sql);

//gera um loop com as linhas encontradas
while ($row = ibase_fetch_object ($query)) {

    //imprimi as linhas na tela
    echo $row->COLUNA1 . "n";

}

//Libera a memoria usada
ibase_free_result($query);

//fecha conexão com o firebird
ibase_close($dbh);

Um erro muito comum ao tentar fazer a conexão com o firebird é a seguinte mensagem de erro;

“Warning: ibase_connect() [function.ibase-connect]: Unable to complete network request to host “127.0.0.1”. Failed to locate host machine. The specified name was not found in the hosts file or Domain Name Services.”

Para resolver é bem simples, basta inserir 2 linhas no arquivo de configuração de serviços.
Vá ate o diretorio C:WindowsSystem32driversetc e abra o arquivo services, insira no final do arquivo as seguintes linhas

gds_db    		3050/tcp    						#firebird Database
gds_db    		3050/udp    						#firebird Database

Pronto sua conexão podera ser feita com sucesso.

Para saber mais sobre os comandos que podem ser usados acesse:

http://www.php.net/manual/pt_BR/ref.ibase.php

Aprendendo a fazer uma consulta no DB Oracle usando PHP

Posted by Bento | Posted in Artigos, Banco de Dados, Oracle, PHP | Posted on 06-08-2010-05-2008

2

Continuação do artigo sobre conexão com Oracle usando PHP. Vou mostrar como fazer consultas em tabelas, criar variaveis, e usar OCI_NO_AUTO_COMMIT.

//conexão com o Oracle
$conexao = oci_connect('usuario', 'senha', '127.0.0.1/nome_servico');

if (!$conexao) {
$erro = oci_error();
trigger_error(htmlentities($erro['message'], ENT_QUOTES), E_USER_ERROR);
exit;
}

//bloco da consulta SQL
$consulta = "select * from cep_localidade";
$stid = oci_parse($conexao, $consulta) or die ("erro");

//Executa os comandos SQL
$exec= oci_execute($stid);

//defini váriaveis
oci_define_by_name($stid, 'COLUNA1', $VAR1);
oci_define_by_name($stid, 'COLUNA2', $VAR2);
oci_define_by_name($stid, 'COLUNA3', $VAR3);

//Abaixo conta a quantidade de linhas retornada da consulta.
echo $nrows = oci_fetch_all($stid, $results);

oci_free_statement($stid);
//fecha a conexão atual
oci_close($conexao);

Pessoal espero que ajude e tire as duvidas de quem vai começar a usar PHP+ORACLE, é um exemplo bem simples de como fazer uma consulta no banco de dados.

Para usar INSERT, UPDATE OU DELETE use a função OCI_NO_AUTO_COMMIT e valide em seguida.

$exec= oci_execute($stid, OCI_NO_AUTO_COMMIT);
//se encontrar algum erro da um rollback NÃO efetiva a query
if (!$exec) {
    $e = oci_error($stid);
    oci_rollback($conexao);  // rollback changes to both tables
    trigger_error(htmlentities($e['message']), E_USER_ERROR);
}

// COMITA a query
$exec = oci_commit($conexao);
if (!r) {
    $e = oci_error($conexao);
    trigger_error(htmlentities($e['message']), E_USER_ERROR);
}

PHP – Conexão com Oracle

Posted by Bento | Posted in Banco de Dados, Oracle, PHP | Posted on 04-08-2010-05-2008

14

Hoje vou mostrar como fazer conexão no oracle usando o PHP.

1° passo – O primeiro passo é configurar o PHP. As bibliotecas para conexão com o Oracle.

Localize o arquivo php.ini dentro do diretório de instalação do apache, e em seguida abra usando um editor de texto.

Encontre a linha ;extension=php_oci8.dll e remova o ponto e vírgula no inicio.
Encontre a linha ;extension=php_oracle.dll e remova o ponto e vírgula no inicio.

Caso não encontre as linhas insira no final do arquivo.

2° passo – Agora vamos criar a conexão com o Oracle.

Para conectar no oracle usava-se OCILogon que foi substituido por oci_connect a partir da versão 5.1.2 do PHP.
Vou mostrar como usar as 2 maneiras.

//metodo para se conectar usando versão 4 ou anterior do PHP
//depende da instalação do client do oracle e configuração do arquivo TNS
$conexao_antiga = OCILogon("usuario", "senha", "servico");

//metodo usado a partir do PHP 5.1.2
$conexao = oci_connect('usuario', 'senha', '127.0.0.1/nome_servico');

if (!$conexao) {
    $erro = oci_error();
    trigger_error(htmlentities($erro['message'], ENT_QUOTES), E_USER_ERROR);
exit;
}

Modelo de configuração do arquivo TNS.ORA
O arquivo TNSNAMES.ORA armazena as configurações do servidor e nome da instancia do oracle. Abaixo postei um arquivo com duas configurações base produção e base teste.
Lembrando que ao instalar o oracle client em seu computador é criado um arquivo vazio caso seu arquivo TNS esteja em algum endereço da rede é necessário alterar o caminho no registro do windows.
Diretório padrão do arquivo: C:oracleproduct10.2.0client_1networkADMINtnsnames.ora

# TNSNAMES.ORA Network Configuration File: c:oracleora92networkadmintnsnames.ora
# Generated by Oracle configuration tools.

producao =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = prod)
    )
  )

teste =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = teste)
    )
  )

Modelo de configuração do arquivo de registro “REGEDIT” indicando o diretorio onde esta o arquivo TNS.
Caso seu arquivo de TNS seja armazenado em outro local é necessário atualizar o registro, alterando o TNS_ADMIN para o novo caminho.

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINESOFTWAREORACLEKEY_OraClient10g_home1]
"TNS_ADMIN"="C:\oracle\product\10.2.0\client_1\network\ADMIN"

[HKEY_LOCAL_MACHINESOFTWAREORACLE]
"TNS_ADMIN"="C:\oracle\product\10.2.0\client_1\network\ADMIN"

Bem pessoal, basicamente é isto espero que ajude. No próximo artigo vou mostrar como fazer uma consulta no DB Oracle.
Um abraço a todos.