A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Material III-Bimestre Wagner Santos C. de Jesus

Apresentações semelhantes


Apresentação em tema: "Material III-Bimestre Wagner Santos C. de Jesus"— Transcrição da apresentação:

1 Material III-Bimestre Wagner Santos C. de Jesus
Universidade do Vale do Paraíba Colégio Técnico Antônio Teixeira Fernandes Disciplina Ferramenta de Desenvolvimento Material III-Bimestre Conceito e Aplicação de Banco de Dados Usando PHP Prof. Responsável Wagner Santos C. de Jesus

2 Manipulação de Banco de Dados Usando PHP

3 O que vem a ser um Banco de dados.
Vem a ser a forma como organizamos as informações de origem podendo Relatar, Classificar, Organizar e Adaptar as maneira de se administrar as informações.

4 Sistemas de Gerenciamento de Banco de Dados
Um SGDB é o software responsável pelo armazenamento, recuperação e atualização dos dados de forma rápida e fácil. Um SGBD relacional é um software gerenciador de banco que acessa os dados na forma de linhas e colunas.

5 Estrutura Geral de Sistema
Componentes Funcionais de um SGBD: Gerenciador de Arquivos: Gerencia a alocação de espaço e armazenamento em disco e estruturas de dados. Gerenciador do Banco de Dados: Proporciona interface entre os dados de baixo nível e os programas de aplicação e consultas. Processador de Consultas: Traduz comandos de uma linguagem de consulta em instruções de baixo nível para que o GBD entenda. Tenta otimizar os pedidos de consulta dos usuários. Pré-Compilador DML: Compila comandos DML em rotinas da linguagem do host. Precisa interagir com o processador de consultas para gerar código apropriado. Compilador DDL: Converte comandos DDL em um conjunto de tabelas contendo metadados, que são armazenados no DD.

6 Diferenças Oracle (Muito Alta Performance)
MS-SQL-Server (Média p/ Alta Performance) InterBase (Média) MySql (Média) Microsoft Access

7 Autenticação com Banco
Servidor, Login e Senha Servidor Cliente Form. HTML Banco,Conexão Base de Dados Libera Procedimento

8 Usando a Linguagem de Manipulação de Dados. (SQL)
A linguagem SQL (Structure Query Language) Linguagem de Estrutura de Consulta. Possibilita uma estrutura única de comandos que podem ser usados em qualquer Banco de Dados do Mercado com maior rapidez e eficiência na escrita de códigos de operações básicas de manipulação de dados.

9 Estudo da DML Linguagem de Manipulação de Dados (ou DML, de Data Manipulation Language) é uma família de linguagens de computador utilizadas para a recuperação, inclusão, remoção e modificação de informações em bancos de dados. Pode ser procedural, que especifica como os dados devem ser obtidos do banco; pode também ser declarativa (não procedural), em que os usuários não necessitam especificar o caminho de acesso, isto é, como os dados serão obtidos. O padrão SQL é não procedural. DMLs foram utilizadas inicialmente apenas por programas de computador, porém (com o surgimento da SQL) também têm sido utilizadas por pessoas.

10 Estudo de DDL Linguagem de definição de dados (LDD ou DDL, do Inglês Data Definition Language) é uma linguagem de computador usada para a definição de estruturas de dados. O termo foi inicialmente introduzido em relação ao modelo de banco de dados Codasyl, onde o esquema de banco de dados era escrito em uma Linguagem de Definição de Dados descrevendo os registros, campos e "conjuntos" que constituíam o Modelo de dados do usuário. Inicialmente referia-se a um subconjunto da SQL, mas hoje é usada em um sentido genérico para referir-se a qualquer linguagem formal para descrição de estruturas de dados ou informação, assim como esquemas.

11 Estrutura da Linguagem SQL
Select - Consulta de dados Insert - Inclusão de dados Update - Alteração de dados Delete - Remoção de dados

12 Abordagem Prática de uma Query (Consulta)

13 * - Pega todos os campos de uma tabela.
Instrução select permite realizar consultas (filtros em uma ou mais tabelas). Sintaxe Geral : Select [* | <campos>|distinct] From <Tabela> [where <condição>] like <mascara> * - Pega todos os campos de uma tabela. Distinct - Não permite repetição de registros. From - Anuncia o nome da tabela que será usada.

14 Sintaxe Geral : Where - permite definir a condição para a consulta like - Define que tipo de consulta será utilizada através de máscara. IS Null - Verifica se um campo é nulo, ou seja, campos em branco. Between e and - valores em um intervalo específicado. Order By - Ordena o registros da consulta

15 Exemplo de Consulta Correlacionanda
Select nome from funcionario where codfunc in( select codfunc from vendas where cotas = 10)

16 Sintaxe : Select [*/All/Distinct][<Campos-Tabela>] From [<Nome-Tabela>] Where [<Condição>][Order by <campo[ASC|DESC]] Exemplo : Select Nome,Endereco From Cadastro Where nome = ‘Jorge Mauro’

17 Select * From tabela1 order by nome
Exemplo de order by Select * From tabela1 order by nome Seleciona o valor todos os campos da tabela com nome em ordem Crescente.

18 Select endereco From tabela1 where nome is null
Seleciona os dados do campo endereco que o campo nome da tabela for igual nulo.

19 Select Nome,Fone from Funcionario Where Nome like ‘C%’
Seleciona os dados dos campos nome e endereço que campo nome comece com letra “C”.

20 Select Nome fone From tabela1 Where nome like ‘%Henrique%’
Seleciona os dados da tabela1 que o nome tiver a string Henrique em qualquer posição.

21 Select Nome from funcionario where salario between 1200 and 4000 and (Estado=‘SP’ or Estado=‘RJ’
Seleciona os dados do campo nome que o salário estiverem em um intervalo entre 1200 4000 e o estado for igual a SP ou RJ.

22 Select Nome, Estado from Tabela1 from funcionario where estado in(‘SP’,’MG’)
Seleciona os dados da tabela1 dos campos nome e estado que estado for igual SP e MG

23 Funções de uma Query : Upper - Retorna os dados do campo da tabela letras maiúsculas. AVG - Retorna a média dos valore de um campo. MIN - Retorna o menor valor do campo de uma tabela. MAX - Retorna o maior valor do campo de SUM - Retorna a soma dos valores de uma determinada coluna.

24 Select Upper(nome), fone from tabela1
Select Max(Valor) from tabela1 Select Min(Valor) from Tabela1 Select Avg(Valor) from Tabela1 Select Sum(Valor) From Tabela1

25 Abordagem Prática de Comandos de Modificação da base de dados.

26 (Inserir dados) - Sintaxe : Insert into <Nome-Tabela>[( <Nome-dos-Campos> )] Values(<Lista de Campos>) Exemplo : Insert Into CadAlunos (Nome,Endereco) Values( 'Marta Cunha','Rua Siqueira Campos,3' )

27 Delete From CadAlunos Where nome = ‘Maria das Coves’
Remover dados - Sintaxe : Delete From <Nome-da-Tabela> [Where <Condição>] Exemplo : Delete From CadAlunos Where nome = ‘Maria das Coves’

28 Alterar Dados - Sintaxe : Update <Nome da Tabela> set <nome-do-campo> = <Constante> [Where <Condição>] Exemplo : Update CadAlunos set nomeAluno = ‘Maria da Coves’ Where Codigo = ‘001’

29 mysql_connect Estabelece conexão com o servidor de dados e retorna verdadeiro se houver sucesso na realização da mesma. Sintaxe: <varm> = mysql_connect(<servidor>,<usuario>,<senha>)

30 mysql_select_db Estabelece conexão com o banco de dados e retorna verdadeiro se houver sucesso na realização da mesma. Sintaxe: <varm> = mysql_select_db(banco,conexao);

31 mysql_connect() - Abre uma conexão com um servidor MySQL.
Criação de autenticação no banco de dados. Servidor; Usuário; Senha Servidor Banco de Dados Servidor Web Autenticação Servidor, Usuário, Senha

32 Exemplo prático // Cria conexão com o banco de dados db.php $servidor = " "; $usuario = "root"; $senha = ""; $db = "Banco"; if($conexao = mysql_connect($servidor,$usuario,$senha)) { if(!mysql_select_db($db,$conexao)) { echo "<Script>Não foi possível efetuar a conexão com o Banco de Dados!!</Script>"; } } else echo "<Script>Não foi possível realizar a conexão!!</Script>"; ; } } else echo ;", "width": "800" }

33 mysql_query() Envia uma instrução SQL para o banco de dados. Permitindo que sejam realizadas as operações. Select (Consulta) Insert (Inclusão) Update (Alteração) Delete (Remoção)

34 Abertura de um cursor para localização em arquivo.
ResultSet Jose Pedro Paulo Roberta Banco Dados Movimentação para um tipo de navegação para conjunto de resultados. Realizar a navegação sequencial no registros do banco de dados

35 Aplicando instruções para a Consulta ao banco de dados

36 (Fluxo) Procedimentos para consulta em uma tabela
Conexão e Autenticação Envio de comando DML (Consulta) (S) Verifica se existe registro Exibe registros FIM (N)

37 mysql_num_rows() Retorna o número de linhas em um resultset retorna verdadeiro se existir linhas na consulta.

38 mysql_fetch_array() Retorna uma matriz que corresponde a linha obtida e move o ponteiro interno dos dados adiante.

39 Consultando dados em uma tabela mysql_num_rows(), mysql_fetch_array()
<?php include("bd.php"); $result = mysql_query("select * from tabela"); if(mysql_num_rows($result) != 0){ while($linha = mysql_fetch_array($result)){ echo $linha["Nome"]."<br>"; } ?>

40 Inserindo dados em uma tabela
include("bd.php"); $vnome = "Carlos Marcelo"; $vcidade = "São José dos Campos"; $sql = "Insert into tabela(nome,cidade) values ('".$vnome."','".$vcidade."')"; $result = mysql_query($sql); if($result) { echo "<script>alert('Dados Inserido com sucesso !!')</script>"; } ; }", "width": "800" }

41 Alterando dados de uma Tabela
include("bd.php"); $vnome = "Carlos Marcelo"; $vcidade = "Campos do Jordão"; $cod = 9; $sql = "Update tabela set cidade ='".$vcidade."' where codigo = ".$cod; $result = mysql_query($sql); if($result) { echo "<script>alert('Dados atualizados com sucesso !!')</script>"; } ; }", "width": "800" }

42 Remover dados de uma tabela
include("bd.php"); $cod = 9; $sql = "Delete from tabela where codigo = ".$cod; $result = mysql_query($sql); if($result) { echo "<script>alert('Dados Removidos com sucesso com sucesso !!')</script>"; } ; }", "width": "800" }

43 Criando uma Estrutura de Dados para Exibição da Informação

44 Criação de rotinas de auxilio ao desenvolvimento
Arquivo de cabeçalho que permite que as funções sejam chamadas assim que solicitadas. Em ciência da computação, mais especificamente no contexto da programação, uma sub-rotina (função, procedimento ou mesmo subprograma) consiste em uma porção de código que resolve um problema muito específico, parte de um problema maior (a aplicação final).

45 Algumas das vantagens na utilização de sub-rotinas durante a programação são:
A redução de código duplicado num programa; A possibilidade de reutilizar o mesmo código sem grandes alterações em outros programas; A decomposição de problemas grandes em pequenas partes; Melhorar a interpretação visual de um programa; Esconder ou regular uma parte de um programa, mantendo o restante do código alheio às questões internas resolvidas dentro dessa função;

46 Estrutura auxiliar Conjunto de Funções
Retorno (saída) de dados na função Entrada de dados na função MontaTela.php

47 Estrutura de Programação
db.php SubRotinas.php Gravadados.php MontaTela.php listaDados.php

48 function strzero($numero)
Retorna com zeros a esquerda de um número informado caso exista posições em branco. $numero: Número a ser preenchido com zeros a direita.

49 function faixa_horizontal($corletra,$corfaixa,$texto)
Cria faixa para divisão de dados em tela. $corletra: Cor dos caracteres a serem apresentados na tela. $corfaixa: Cor da faixa de divisão da tela. $texto: Texto a ser exibido na faixa.

50 function campos_tela($array_campos,$progphp)
Cria tela de cadastramento enviando os campos que serão exibidos. $array_campos: Array contendo os nomes dos campos que serão exibidos na tela. $progphp: Nome do arquivo (php) que deverá ser usado pelo formulário.

51 function listaDados($strQ)
$strQ: Recebe instrução SQL para realização de consulta de campos. Exemplo: listaDados(“Select * from tabela”);

52 function InsereDados($array_campos,$nome_tabela)
$array_campos: Campos a serem inseridos na tabela. $nome_tabela: Nome da tabela criado na base de dados.

53 Exercício Escrever um programa que leia o nome o ano de nascimento o ano atual e grave em uma tabela o nome, ano de nascimento, ano atual e a idade da pessoa.


Carregar ppt "Material III-Bimestre Wagner Santos C. de Jesus"

Apresentações semelhantes


Anúncios Google