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

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

Universidade do Vale do Paraíba Colégio Técnico Antônio Teixeira Fernandes Disciplina Ferramenta de Desenvolvimento Rápido de Aplicação Material IV-Bimestre.

Apresentações semelhantes


Apresentação em tema: "Universidade do Vale do Paraíba Colégio Técnico Antônio Teixeira Fernandes Disciplina Ferramenta de Desenvolvimento Rápido de Aplicação Material IV-Bimestre."— Transcrição da apresentação:

1 Universidade do Vale do Paraíba Colégio Técnico Antônio Teixeira Fernandes Disciplina Ferramenta de Desenvolvimento Rápido de Aplicação Material IV-Bimestre Linguagem de Manipulação de Dados; Estudo da linguagem SQL; Grades Relatórios, Módulo de dados; Execução e passagem de parâmetros para uma (Query) site: http://www1.univap.br/~wagner Prof. Responsável Wagner Santos C. de Jesus 1

2 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. 2

3 Em Delphi existe duas maneiras de incorporar SQL a projetos Usando o mecanismo de banco de dados SQL integrado. Usando um servidor de banco de dados interno. Usando uma conexão Client/Server. 3

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

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

6 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 6

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

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

9 Sintaxe : Update set = [Where ] Exemplo : Update CadAlunos set nomeAluno = Maria da Coves Where Codigo = 001 9

10 Sintaxe : Insert into [( )] Values( ) Exemplo : Insert Into CadAlunos (Nome,Endereco) Values( 'Marta Cunha','Rua Siqueira Campos,3' ) 10

11 Sintaxe : Delete From [Where ] Exemplo : Delete From CadAlunos Where nome = Maria das Coves 11

12 Sintaxe : Select [*/All/Distinct][ ] From [ ] Where [ ][Order by <campo[ASC|DESC]] Exemplo : Select Nome,Endereco From Cadastro Where nome = Jorge Mauro 12

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

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

15 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. 15

16 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. 16

17 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. 17

18 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 18

19 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 uma tabela. SUM - Retorna a soma dos valores de uma determinada coluna. 19

20 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 20

21 Group by - Esta cláusula exibe dados resumidos por meio do agrupamento das linhas que possuam os mesmos valores em suas colunas. Having - Esta cláusula sempre vem associada à cláusula GROUP BY. 21

22 Select avg(salario) as media, Estado from tabela1 group by Estado Calcula a média de todos os salário da base de dados agrupando os dados por estado contido na tabela. as - permite armazenar o conteúdo de uma declaração SQL em um campo que poderá ser usado no programa. 22

23 Select avg(salario), Estado from tabela1 group by Estado having avg(salario) > 5000 seleciona todos os registro da média do campo salário e os dados do campo estado agrupando por estado cuja a média e igual a 5000. 23

24 Select Nome from Funcionario where nome in(Select cod_func from tabela1 where adicional > 10) Seleciona o nome dos funcionário que tenham adicional maior que 10. 24

25 Componente Query Para podermos usar os recursos da linguagem de manipulação de dados usamos os componente Query que permite trabalhar com SQL( Structure Query Language). Query possui todos os atributo de uma tabela com a diferença é que podemos usar a linguagem de manipulação de dados fazendo filtros de seleção. 25

26 Acesso com Componente ADOQuery 26

27 Usando o Componente Query Exemplo : Componente Propriedade Valor ADOQuery Connection ADOConnection1 DataSource DataSet ADOQuery1 ADOQuery SQL select * from tabela ADOQuery Active true 27

28 Instruções SQL em um componente ADOQuery. Sintaxe : ADOQuery1.SQL. ; Determina uma ação para o componente ADOQuery1. 28

29 Toda Instrução SQL para consulta deve ser escrita usando a estrutura abaixo. Exemplo : ADOQuery1.SQL.Clear; ADOQuery1.SQL.Add( ); ADOQuery1.Open; 29

30 Exemplo Prático procedure TForm1.Button1Click(Sender: TObject); begin ADOQuery1.Sql.Clear; ADOQuery1.SQL.add('Select * From cadastro'); ADOQuery1.open; ADOQuery1.Last; While Not ADOQuery1.Bof do begin ShowMessage(ADOQuery1['Nome']); ADOQuery1.Prior; end; 30

31 Atualização de Tabelas SQL. Importante : Para realizarmos qualquer operação de Query que não seja um select em tempo de execução devemos usar o método. (ExecSql). 31

32 Exemplo: apagando um código vindo de entrada de dados procedure TForm1.Button4Click(Sender: TObject); var s : String; begin ADOQuery1.Close; ADOQuery1.Sql.Clear; s := '8989'; ADOQuery1.SQL.add('Delete From cadastro Where codigo ='+chr(39)+s+chr(39)); Query1.ExecSQL; end; 32

33 Método ParamByName() Permite enviar parâmetros diretos em uma consulta sem a necessidade de montar a string. Usar sempre a variável precedida de (:) dois pontos essa variável deve ser colocada no método ParamByName(). 33

34 Observe o exemplo abaixo. ADOQuery1.Close; ADOQuery1.SQL.Clear; ADOQuery1.SQL.Add('Select * from CadaNomes where nome = :vnome'); ADOQuery1.Parameters.ParamByName('vnome').Value := Edit1.Text; ADOQuery1.Open; if not ADOQuery1.Eof then ShowMessage('Nome Encontrado '+ADOQuery1['nome']) else ShowMessage('Nome não encontrado !!!'); 34

35 DBGrid - Paleta DataControls 35

36 Configuração de DBGrid usando SQL para mostrar os dados. ObjetoPropriedadeAtributo ADOQueryDatasetQuery1 DBGridDatasourceDataSource1 ADOQuerySQLSelect * from Tabela1 ADOQueryActiveTrue 36

37 Modulo de dados (DataModule) O modulo de dados permite que todos os componentes usados para manipulação de dados estejam reunidos em um mesmo ambiente fazendo com que as aplicações possam ficar mais organizadas. 37

38 Fazendo o acesso ao formulário de dados. (DataModule) Selecione está opção. 38

39 Basta adicionar o componentes das paletas DataControl e DataAcess 39

40 Para usar o DataModule siga os passos abaixo Uses Unit irá adicionar sua unidade DataModule ao formulário de programa. 40

41 Exemplo: Programando com DataModule dtm.ADOTable1.Active := true; While not Dtm.ADOTable1.Eof do begin ListBox1.Items.Add(dtm.ADOTable1['nome']); dtm.ADOTable1.Next; end; Observe que dtm vem a ser o nome atribuído ao DataModule na propriedade Name do Objeto. 41

42 Usando Herança dos objetos With do : Permite que seja referenciado apenas uma única vez o nome do objeto e todas as suas propriedade e métodos serão reconhecidos dentro da estrutura. 42

43 Exemplo : With do With Dtm do begin ADOTable1.Active := true; While not ADOTable1.Eof do begin ListBox1.Items.Add(dtm.ADOTable1['nome']); ADOTable1.Next; end; 43

44 Exemplo With encadeados. With Dtm do begin With ADOTable1 do begin Active := true; While not Eof do begin ListBox1.Items.Add(ADOtable1['nome']); Next; end; 44

45 Estruturas de Relatório com QuickReport (QuickRep) Adicione o componente QuickReport em seu formulário. 45

46 Composição de um Relatório Cria um relatório contendo uma ou mais tabela especificadas. 46

47 Criando um Relatório em Componente QRListForm Basta adicionar os componentes de banco de dados e em seguida os campos da tabela 47

48 Componente QRDBText Componente Propriedade Valor QRLabel Caption QRDBText Dataset ADOTable1 QRDBText Dataset + QRDBText Conection ADOConnection1 QRDBText DataField ADOTable Activetrue 48

49 Para Ativar o relatório em programa. Procedure Tform1.Button1Click(......); begin Form1.QuickRep1.Preview; // Tela ou Form1.QuickRep1.Print; // Impressora. end; 49


Carregar ppt "Universidade do Vale do Paraíba Colégio Técnico Antônio Teixeira Fernandes Disciplina Ferramenta de Desenvolvimento Rápido de Aplicação Material IV-Bimestre."

Apresentações semelhantes


Anúncios Google