Nome: n.º WEB Série 2B 2C 2D 2E Barueri, 17/08/2009 2ª Postagem Disciplina: Gerenciamento e Estrutura de Banco de Dados Professor: Márcio MySQL Query Browser Após usarmos o ambiente MySQL Monitor, que é um ambiente de prompt de comando do SGBD MySQL, iremos utilizar o MySQL Query Browser, que é um ambiente gráfico. Para acessá-lo, o caminho é o mesmo do MySQL Monitor, ou seja, botão Iniciar, todos os programas, MySQL e MySQL Query Browser. Para ter a permissão em utilizar este ambiente, antes precisa se identificar com o nome do usuário, a senha e o Schema (banco de dados) O localhost demonstra que o servidor de banco de dados MySQL é de acesso local. O valor 3306 é a porta de acesso ao servidor, para a possível conexão. Cada usuário poderá ter acesso e privilégios para um ou mais banco de dados. Isso quer dizer que, quando o usuário for realizar sua identificação para se conectar ao MySQL, como demonstra a imagem da janela acima, digitar o banco de dados a ser utilizado, na caixa de texto da opção Default Schema Já dentro do servidor, repare na imagem seguinte que no canto direito encontra-se a lista de esquemas e o rh é o esquema a ser trabalhado. A área branca à esquerda é um editor para os comandos da linguagem SQL, onde que o botão verde na barra de ferramentas é a execução da linguagem e a área branca abaixo, é o resultado da execução.
Iremos utilizar este ambiente, pois é mais amigável ao usuário, como por exemplo, a correção de erros de sintaxe da linguagem SQL, onde não precisa digitar todos os comando novamente. Quando se insere um registro através de comandos SQL, a área branca abaixo não demonstra nenhum resultado retornado, pois os dados são inseridos na tabela e isso faz com que nenhum dado é retornado ao usuário naquele momento. Somente na barra de status do MySQL Browser aparece a mensagem de que um registro foi inserido na base de dados. Não esqueçam de consultar todos os registros da tabela: SELECT * FROM TABELA; Classificação de Dados Você pode gerar uma consulta para classificar os dados numéricos, de caracteres ou datas. Para isso é acrescentado o comando ORDER BY dentro da instrução de comandos SQL. O exemplo abaixo demonstra selecionar o nome, cargo e salário de todos os funcionários em ordem alfabética. SELECT NOME_EMP, CARGO, SALARIO ORDER BY NOME_EMP ASC; O commando ASC quer dizer ascendente/crescente. Um outro exemplo demonstra selecionar o nome, cargo e salário de todos os funcionários em ordem alfabética de modo inverso. SELECT NOME_EMP, CARGO, SALARIO ORDER BY NOME_EMP DESC; O commando DESC quer dizer descendente/decrescente.
A instrução abaixo demonstra um exemplo que classifica a seleção de funcionários por código: SELECT COD_EMP, NOME_EMP, CARGO, SALARIO ORDER BY COD_EMP ASC; O resultado desta instrução acima, classifica o funcionário mais antigo selecionado no primeiro registro, e o funcionário recém contratado no último registro. Uma observação importante é que se na instrução estivesse DESC, o resultado demonstraria uma classificação inversa, ou seja, o funcionário mais antigo selecionado no último registro, e o funcionário recém contratado no primeiro registro. O último exemplo a ser demonstrado é a classificação de funcionários por data SELECT NOME_EMP, CARGO, SALARIO, DATA_NASC ORDER BY DATA_NASC ASC; O resultado da instrução acima, classifica o funcionário mais velho, em termos de idade, selecionado no primeiro registro, e o funcionário mais novo, no último registro. Uma observação importante é que se na instrução estivesse DESC, o resultado demonstraria uma classificação inversa, ou seja, o funcionário mais velho selecionado no último registro, e o funcionário mais novo no primeiro registro.
Cláusula WHERE Para restringir registros de uma tabela em uma consulta, é utilizado a cláusula WHERE, que é uma cláusula que contém condição que deve coincidir e seguir diretamente a cláusula FROM. Na cláusula WHERE são utilizados nomes de colunas com valores literais, operadores condicionais, operadores lógicos e funções. Os valores literais podem ser do tipo numérico, de caracter e data, onde estas duas últimas aparecem entre aspas simples. Os valores de caracter fazem distinção entre maiúsculas e minúsculas. Operadores condicionais e lógicos são os mesmos utilizados em linguagens de programação, incluindo também o VB.NET. Exemplo da instrução SELECT utilizando a cláusula WHERE, selecionando os nomes e cargos dos funcionários que trabalham no departamento 2 SELECT NOME_EMP, CARGO WHERE COD_DEPTO = 2; Perceba na imagem acima que resultou x registros como resposta a consulta. Isto quer dizer que x funcionários trabalham no departamento 2
Exercícios Em relação a tabela FUNCIONARIOS, cuja estrutura foi criada no MySQL Monitor, faça as seguintes consultas utilizando a linguagem SQL. 1. Selecionar os nomes de todos os vendedores. 2. Selecionar os nomes e cargos de todos os funcionários que trabalham nos departamentos 1 e 3. 3. Selecionar os nomes, cargos e salários de todos os funcionários. Não esquecer em classificar os funcionários no inverso à ordem alfabética, ou seja, os funcionários que começam com as últimas letras do alfabeto, estarão nos primeiros registros, e os funcionários que começam com as primeiras letras do alfabeto, estarão nos últimos registros. 4. Selecionar os nomes, cargos e data de admissão de todos os funcionários. Não esquecer em classificar os funcionários por data de admissão, ou seja, os funcionários mais antigos da empresa, estarão nos primeiros registros, e os funcionários contratados reentemente, estarão nos últimos registros..