1 / 87

Curso EFA de técnico de Informática e Sistemas

Curso EFA de técnico de Informática e Sistemas. Ano letivo 2012-2013. EDUCAÇÃO E FORMAÇÃO DE ADULTOS Curso EFA – Sec. Turma C - 2012 / 2013. Docente: Ana Batista. Exemplos de comandos. Criar e alterar a estrutura de uma BD:

Télécharger la présentation

Curso EFA de técnico de Informática e Sistemas

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Curso EFA de técnico de Informática e Sistemas Ano letivo 2012-2013 EDUCAÇÃO E FORMAÇÃO DE ADULTOS Curso EFA – Sec. Turma C - 2012 / 2013 Docente: Ana Batista

  2. Exemplos de comandos • Criar e alterar a estrutura de uma BD: • Create database – para iniciar a criação de uma base de dados; • Create table – para criar a estrutura de uma tabela; • Alter table – modificar a estrutura de uma tabela; • Drop table – eliminar uma tabela; • Drop database – eliminar uma BD. Docente: Ana Batista

  3. Exemplos de comandos • Atualizar e consultar uma BD: • Insert – inserir dados numa tabela; • Update – atualizar ou alterar dados; • Delete – apagar dados; • Select – efetuar consultas ou pesquisas a uma base de dados. Docente: Ana Batista

  4. Exemplos de comandos • Controlar o acesso e o funcionamento seguros de uma BD: • grant – permite atribuir ou definir os direitos dos utilizadores de uma BD; • revoke – retira os direitos atribuídos; • Lock table – bloqueia uma tabela de forma a impedir que outros utilizadores a alterem; • Unlock table – desbloqueia tabela bloqueada; • Start transation – inicia uma transação/operação controlada numa BD. Docente: Ana Batista

  5. Comandos para criar e eliminar uma BD • Criação de uma BD • Create database Vendas Objetivo: iniciar a criação de uma bd com o nome Vendas. Docente: Ana Batista

  6. Comandos para criar e eliminar uma BD • Eliminar uma BD em SQL • Drop database Vendas Objetivo: elimina a bd com o nome Vendas, de forma irrecuperável (a não ser que tenham sido feitas cópias de segurança). NOTA: Só os utilizadores do sistema que tenham o estatuto de superutilizador ou a quem tenham sido atribuídos todos os direitos sobre a base de dados, é que podem efetuar este tipo de operação. Docente: Ana Batista

  7. Criar uma tabela - sintaxe Create table nome_tabela (definição_campo1 … Definição campo_n); Cria uma tabela com um dado nome. Dentro dos parêntesis é indicada a estrutura dos campos que se pretende para a tabela. Docente: Ana Batista

  8. Assim… • Definição_campo1 corresponde a: Nome_campo tipo_dados [not null] [default valor] [primary key] [references…] Docente: Ana Batista

  9. Ou seja… Para cada campo da tabela indicam-se obrigatoriamente: • Nome do campo • Tipo de dados do campo Para além destes elementos obrigatórios, podem ainda ser indicados outros elementos opcionais. Docente: Ana Batista

  10. NOTA: os parêntesis retos servem apenas para indicar os elementos opcionais; se estes elementos forem indicados, são escritos sem os parêntesis retos. Docente: Ana Batista

  11. Elementos opcionais • Not null – serve para indicar que o campo não pode conter valores nulos • Default valor – permite indicar um valor por defeito para o campo. Por exemplo: default 10 (o campo assume este valor se não for indicado outro) Docente: Ana Batista

  12. Elementos opcionais • Primary key – indica que o campo é ou faz parte da chave primária da tabela. • References – inicia a indicação que o campo funciona como chave estrangeira. Deve ser escrito: Referencesnome_tabela (nome_campo) , ou seja, a seguir à palavra References é escrito o nome da tabela e o nome do campo (dentro parêntesis curvos) a que o campo faz referência como chave estrangeira. Docente: Ana Batista

  13. Principais tipos de dados em SQL Docente: Ana Batista

  14. Principais tipos de dados em SQL Docente: Ana Batista

  15. Principais tipos de dados em SQL Docente: Ana Batista

  16. Exemplo de um Modelo físico de uma base de dados Docente: Ana Batista

  17. Exemplificação da criação de tabelas Create table Clientes (CodCli Int auto_increment primary key, Cliente Varchar(20), morada varchar (30)); Docente: Ana Batista

  18. Explicação • A tabela Clientes é composta por 3 campos: • CodCli - int • Cliente - varchar • Morada – varchar Docente: Ana Batista

  19. Campo Codcli • Código do cliente é definido como int, isto é número inteiro, além disso é auto_increment, ou seja, o sistema incrementa o n.º do código sempre que é inserido um novo registo nesta tabela. • É indicado como primary key, pois é a chave primária da tabela clientes. Docente: Ana Batista

  20. Campo Cliente • Definido como varchar(20), o campo cliente aceita até um máximo de 20 carateres. Docente: Ana Batista

  21. Campo Morada • Definido como varchar(30), o campo morada aceita até um máximo de 30 carateres. Docente: Ana Batista

  22. Exemplificação da criação de tabelas Create table Produtos (Codprod Int auto_increment primary key, Produto Varchar(20), preco numeric (10,2)); Docente: Ana Batista

  23. Tabela Produtos • É semelhante à tabela Clientes, o que muda é o campo Preco. NOTA: não se deve escrever preço, porque os nomes tabelas, campos em SQL só podem conter os carateres do alfabeto inglês, onde não há acentos nem caracteres especiais como o ç. Docente: Ana Batista

  24. Campo Preco • O campo preço é do tipo numérico, não inteiro, mas com casas decimais, aconselhável para pôr por exemplo, valores monetários. Docente: Ana Batista

  25. Tabela Encomendas Create table Encomendas (Nenc Int Auto_increment primary key, CodCli Int references Clientes (CodCli), CodProd Int references Produtos (CodProd), Quant Int); Docente: Ana Batista

  26. Campo NEnc • O campo Nenc (nº da encomenda) é definido como inteiro, incrementado, e chave primária da tabela encomendas. Docente: Ana Batista

  27. Campo Quant • O campo Quant (quantidade) é definido como inteiro. Docente: Ana Batista

  28. Parte especial da tabela encomendas… • Reside nos campos codCli e CodProd que são chaves estrangeiras, por se referirem a campos que são chaves primárias em outras tabelas. • Esses campos vão fazer referência aos mesmos campos nas tabelas de origem (Clientes e produtos). Docente: Ana Batista

  29. Eliminar e alterar a estrutura de uma tabela • Para eliminar uma tabela, o comando sql é drop table nome_tabela Ex: drop table Encomendas Docente: Ana Batista

  30. Eliminar e alterar a estrutura de uma tabela • Para alterar uma tabela, o comando sql é alter table que contém 3 variantes: add, modify e drop. Ex: alter table nome_tabela {Add (novo_campo tipo_dados) | modify (nome_campo tipo_dados) | drop (nome_campo)}; Docente: Ana Batista

  31. O facto de as 3 opções, add, modify e drop serem incluídas dentro de chavetas {} significa que só uma delas pode ser usada em cada instrução. Docente: Ana Batista

  32. Adiciona um novo campo à tabela xxx Modifica um novo campo na tabela xxx Elimina um novo campo na tabela xxx Docente: Ana Batista

  33. Exemplo 1 Alter table Clientes Add telefoneinteger; Acrescenta na tabela clientes, um novo campo com o nome Telefone e do tipo inteiro. Docente: Ana Batista

  34. Exemplo 2 Alter table Clientes Modify telefonechar (9); Modifica na tabela clientes, o campo Telefone passando a ser do tipo char com 9 carateres. Docente: Ana Batista

  35. Exemplo 3 Alter table Clientes drop telefone; Modifica a tabela clientes, eliminando o campo telefone. Docente: Ana Batista

  36. Atualizar dados numa tabela • Quando se fala em atualizar uma base de dados, tal compreende 3 tipos de operações: • Inserir • Apagar • alterar Docente: Ana Batista

  37. Inserir dados numa tabela Insert into nome_tabela (lista de campos) {values (valores) | select instrução}; Inserir dados na tabela indicada, especificando esses dados a seguir à palavra values ou obtendo-os através de uma instrução select. Docente: Ana Batista

  38. NOTA • Após a indicação do nome tabela, podemos indicar opcionalmente os nomes dos campos, onde queremos inserir os dados. • Se os campos não forem indicados, supõe-se que vamos inserir dados em todos os campos da tabela. Docente: Ana Batista

  39. Exemplo 1 Insert into Clientes (Cliente, morada) values (“Aníbal”, “Lisboa”), (“Belmiro”, “Braga”), (“Casimiro”, “Coimbra”); Docente: Ana Batista

  40. Tabela clientes Docente: Ana Batista

  41. Exemplo 2 Insert into Produtos values (null, “portátil”, 400), (null, “berbequim”, 50), (null, “ms office”, 150); Docente: Ana Batista

  42. Tabela produtos Docente: Ana Batista

  43. No exemplo anterior, como não indicámos os campos onde queríamos inserir dados, temos de atribuir valores para todos os campos da tabela. • Null significa que o 1º campo da tabela era auto increment (codprod) e não podemos mexer, por isso a forma é indicar o valor null. Docente: Ana Batista

  44. Exemplo 3 Insert into Encomendas values (null, 1,1,10), (null, 2,1,2), (null, 3,2,5), (null, 1,3,1); Docente: Ana Batista

  45. Tabela encomendas Na tabela encomendas, o primeiro campo é Nenc é do tipo auto_increment, o que impede de atribuir valores, por isso indicamos o null para todos os dados correspondentes a esse código. Quanto aos campos CodCli e CodProd como são chaves estrangeiras, pois referem-se a chaves primárias de outras tabelas, isto obriga a que os valores inseridos devam existir nas tabelas iniciais, por forma a respeitar a integridade referencial. Docente: Ana Batista

  46. Apagar registos e alterar dados • O comando delete apaga registos (linhas) por inteiro numa tabela. Delete from nome_tabela [where condição]; Docente: Ana Batista

  47. Objetivo • Apagar todos os registos na tabela indicada, podendo apagar toda a tabela (se não for especificada uma condição) ou apenas o(s) registos que correspondam à condição indicada. • Se a cláusula Where condição não for indicada, serão apagados todos os registos (todos os dados) da tabela. • Se Where condição for indicada, serão apagados os registos que respeitem a condição indicada. Docente: Ana Batista

  48. Exemplo 1 Delete from produtos; Efeito: todos os dados da tabela produtos serão apagados. Docente: Ana Batista

  49. Exemplo 2 Delete from Produtos Where produto=“Ms office”; Efeito: apaga na tabela produtos os registos (linhas) em que o campo produto é igual a ms office. Docente: Ana Batista

  50. Comando update • A alteração, modificação ou atualização de dados em SQL, faz-se com o comando update. Docente: Ana Batista

More Related