Consulting Tecnologia & Sistemas Ltda
|
|
- Alessandra Caiado Esteves
- 8 Há anos
- Visualizações:
Transcrição
1 Por Edson Almeida Junior Março Ultima Atualização 11/04/2006
2 2 Objetivo Este treinamento destina-se a treinando que querem conhecer a filosofia de banco de dados relacionais, e também a linguagem padrão do Oracle que é a SQL, seus comando principais. O Objetivo, ao término do curso, é de que os treinandos estejam aptos a começar o trabalho com o Oracle e suas ferramentas, quer no desenvolvimento de aplicações ou na administração do Oracle. Modelo Conceitual Conceitos Conjuntos Conjuntos existem para permitir armazenar informações uma única vez. Os fatos serão dissociados e relacionados preservando o seu conteúdo. Ex.: Conjunto de alunos de uma turma, conjunto de pessoas de uma cidade. Modelo ERA O Modelo ERA, ou Modelo de Entidades, Relacionamentos e Atributos, qualifica um item de informação como Entidade, Relacionamento ou Atributo. Entidade É um objeto (ou ente ) em que se tem interesse específico em acompanhar/monitorar sua existência/vida no sistema e/ou que existe de forma independente de outras informações, e/ou que se repete muito e possui grau de entidade e/ou que pertence a um conjunto finito e possui grau de entidade (estabilidade). Entidade Fraca São entidades que não tem vida própria. Sua existência dependerá da existência de uma entidade principal. Exemplo.: Funcionário e Dependente estão unidos por dependência, ou seja, todo Dependente deve estar associado a um e somente um funcionário. Entidade-Tipo É a coleção, ou conjunto, de todas as Entidades que têm a mesma natureza, as mesmas propriedades, e que possuem atributos do mesmo tipo. Exemplo: 7670/Rômulo e 7798/Manoel são alunos de um mesmo curso, então, são Entidades da Entidadetipo Aluno que o curso possui no seu modelo ERA. Matemática, Português e Física são Entidades da Entidade-tipo Disciplina. Relacionamento É um fato que une duas ou mais entidades. Relacionamento-tipo É a coleção, ou conjunto, de todos os relacionamentos que têm a mesma natureza, as mesmas propriedades, que possuem atributos do mesmo tipo e que unem Entidades das mesmas Entidades-tipo pelo mesmo fato. Exemplo: Todas as informações sobre as Disciplinas que os Alunos cursaram são do tipo Histórico; e sobre as que estão cursando são do tipo Matrícula (disciplinas em que os alunos estão matriculados).
3 3 Atributo É uma propriedade da Entidade-tipo ou do Relacionamento-tipo. É análogo ao campo de um registro. Sua posição dentro do modelo é determinada de acordo com a dependência que existe na sua variação de conteúdo (Dependência funcional). Exemplo: 7670/Rômulo e 7798/Manoel são entidades da Entidade-tipo Aluno, logo, a Entidade-tipo Aluno estará representada pelos atributos matrícula e nome. Um atributo pode ser: simples, composto, multivalorado, global, identificador. Atributo Simples É o atributo que guarda em si um único valor indivisível. Ex.: nome, preço, marca. Atributo composto É o atributo resultado da soma de outros atributos. É constituído de subatributos. Ex.: endereço = rua + número + bairro + cep; data = dia + mês + ano Atributo Multivalorado É o atributo que guarda em si repetidos valores. Pode assumir mais de um valor para cada ocorrência. Ex.: telefone, formação. Atributo identificador É (são) o(s) atributo(s) que diferencia(m) uma ocorrência das demais dentro de um conjunto. Se nenhum dos atributos naturais serve como Identificador da ocorrência, um atributo identificador suplementar deve ser acrescentado. Ex.: código, matrícula. Existe uma analogia entre o atributo identificador de uma Entidade-tipo e a chave-primária do arquivo que esta Entidade-tipo vai gerar. O mesmo Não acontece com Relacionamento-tipo. Um atributo identificador nunca poderá estar vazio. Banco de Dados Relacional Um banco de dados relacional pode ser definido como um banco de dados que aparece ao usuário como uma coleção de tabelas. A característica mais fundamental num banco de dados relacional é a de que temos que identificar univocamente seus registros (que chamamos de linhas), ou seja, devemos definir um campo (ou mais de um) dentre os vários campos do registro, para ser o atributo identificador do mesmo (chave primária). O Oracle é um SGBD Relacional - Sistema de Gerenciamento de Banco de Dados Relacional (RDBMS - Relational Database Management System) e foi um dos primeiros sistemas de banco de dados a utilizar a Linguagem de Pesquisa Estruturada (SQL - Structured Query Language) como interface do usuário sendo, talvez, por este motivo, agora um dos principais sistemas de gerenciamento de banco de dados. Conceitos No estudo de banco de dados convém sabermos algumas definições importantes: Tabelas - São as unidades básicas de um SGBD Relacional. É formada por linhas e colunas, onde as linhas representam os registros e as colunas os campos da tabela. São muito conhecidas como Tabelas-Base. Exemplo: Tabela T_Funcionario Cod_Funcionario Cod_Departamento Nome_Funcionario - CHAR(06) - CHAR(05) - VARCHAR2(40)
4 4 Data_Nascimento -- DATE Colunas - Um nome de coluna é o nome que o usuário informará para representar os valores de dados que serão entrados sob cada coluna. Linhas - São os registros da tabela. Valores de dados - São os valores encontrados na interseção de uma coluna e uma linha. Chave primária - Uma ou mais de uma coluna que identifica uma linha, facilitando em muito o acesso aos dados. Visão ou Tabela Virtual(View) - É uma tabela formada por uma pesquisa em uma ou mais tabela-base. Ela não existe, mas parece ao usuário como se existisse. Toda tabela num banco de dados relacional tem que possuir uma Chave Primária. As tabelas poderão também ter chaves estrangeiras, que são campos que relacionam as tabelas do banco de dados, fazendo referência entre uma e outra tabela. SQL - Linguagem de Pesquisa Estruturada A SQL - Linguagem de Pesquisa Estruturada (Structured Query Language) devido as suas características tornou-se a linguagem padrão de sistemas gerenciadores de banco de dados relacionais. É a linguagem de comunicação de todas as ferramentas e/ou aplicações Oracle com o Oracle Server. SQL*Plus é a ferramenta Oracle (interface) que executa os comandos SQL. Podemos com a SQL*Plus: -Pesquisar, adicionar, remover, modificar os dados do BD; -Criar, modificar, remover as estruturas de dados; -Controlar o acesso aos dados. Definição SQL - onde a pronuncia é "ess-kiú-éll" ou "sequel" que é como a maioria das pessoas pronunciam - "Structured Query Language" (linguagem estruturada de pesquisa), é composta por um grupo de facilidades para definição, manipulaçao e controle de dados em um banco de dados relacional. Como começou essa história de Banco de Dados Relacional e SQL? Em 1970, E.F.Codd, nessa ocasião membro do Laboratório de pesquisa da IBM em San Jose, Califórnia, publicou um trabalho agora clássico, "A Relational Model of Data for Large Shared Data Banks" - um modelo relacional de dados para grandes bancos de dados compartilhados - (Communications of the ACM, Vol.13, No. 6, junho de 1970), em que se estabeleceu um grupo de princípios abstratos sobre gerência de banco de dados: o assim chamado modelo relacional. Todo o campo da tecnologia de banco de dados relacional tem suas origens nesses trabalho. As idéias de Codd incentivaram experiências e pesquisas em universidades, laboratóriosde pesquisa industrial e estabelecimentos semelhantes, que resultaram em diversos produtos relacionais agora disponíveis no mercado. Um aspecto em particular da referida pesquisa era o projeto de implementação de protótipo de uma série de linguagens relacionais. Uma linguagem relacional é uma linguagem que efetua, em alguma forma sintática ou concreta, alguma ou todas as características do modelo relacional
5 5 abastrato. Diversas dessas linguagens foram criadas no início e no meio dos anos 70. Uma dessas linguagens em particular foi a chamada SEQUEL ("Structured English Query Language" - Linguagem de Pesquisa em inglês estruturado), definida por D.D. Chamberlin e outros (1974) no laboratório de Pesquisas da IBM em San Jose, Califórnia, e inicialmente implementada em um protótipo da IBM chamado SEQUEL-SRM ( ). Em parte como resultado da experiência com o SEQUEL-XRM, foi definida em uma versão revisada do SEQUEL, chamada SEQUEL/2. (O nome foi subsequentemente alterado para SQL por razões legais). Começou o trabalho em outro protótipo mais ambicioso da IBM, chamado System R. O System R., uma implementação de um grande subconjunto da linguagem SEQUEL/2 (ou SQL), tornou-se operacional em 1977 e foi subsequentemente instalado em uma série de estabelecimentos, usuários, tanto internos à IBM quanto (sob um grupo de acordos comerciais de estudo) clientes selecionados da IBM. * Uma série de mudanças posteriores foram feitas à linguagem SQL durante a vida útil de projeto do System R, em parte como resposta a sugestões de ususários. Por exemplo, foi incluída uma função EXISTS para testar se um dado especificado existia no banco de Dados. Vamos a um exemplo prático: SELECT DEPTNO, DNAME FROM DEPT D WHERE EXISTS (SELECT 'X' E WHERE E.DEPTNO = D.DEPTNO); * Existe outra forma de fazer este query. Porém esta é a forma mais rápida de acesso ao Banco Em grande parte, graças ao sucesso do System R, tornou-se aparente ao final dos anos 70 que a IBM provavelmente desenvolveria um ou mais produtos baseados na tecnologia do System R - especificamente, produtos que implementassem a linguagem SQL. Como resultado, outros vendedores também começaram a construir seus próprios produtos baseados no SQL. De fato, pelo menos um desses produtos, a saber o ORACLE, da Relational Software Inc. (que passou a se chamar Oracle Corporation), foi introduzido no mercado antes dos próprios produtos da IBM. Depois, em 1981, a IBM anunciou um produto SQL, chamado SQL/DS para o ambiente DOS/VSE. A seguir a IBM anunciou uma poutra versão do SQL/DS para o ambiente VM/CMS (1982), e outra para MVS chamada DB2, altamente compatível com o SQL/DS (1983). Nos anos seguintes, diversos outros vendedores também anunciaram produtos baseados no SQL. Esses produtos incluíam tanto produtos inteiramente novoscomo o DG/SQL (Data General Corporation, 1984) e SYBASE (Sybase Inc., 1986), quanto interfaces do SQL para produtos estabelecidos como o INGRES (Relational Technology INc., 1981, 1985) e o IDM (Britton-Lee Inc., 1982). Há atualmente muitos produtos no mercado que dão suporte a algum dialetodo SQL, rodando em máquinas que cobrem toda a faixa desde microcomputadores até de grande porte. O SQL se tornou o padrão no mundo do banco de dados relacional. Padrão ANSI O SQL também se tornou o padrão oficial. Em 1982, o American National Standards Institute (ANSI) encarregou seu Comitê de Banco de Dados (chamado X3H2) de desenvolver uma proposta para uma linguagem relacional padrão. Funcionalidade
6 6 A função da linguagem SQL é dar suporte a definição, manipulação e controle dos dados em um banco de dados relacional. Um banco de dados relacional é simplesmente um banco de dados que é percebido pelo usuário como um grupo de tabelas onde tabela é uma coleção de linhas e colunas. A Linguagem SQL pode ser usada através de dois modos: SQL Interativa Onde os comandos SQL são digitados interativamente, ou seja, logo após a digitação do comando vemos sua execução. SQL Embutida Neste modo os comandos SQL ficam embutidos no programa-fonte de uma linguagem de programação. Tal linguagem é normalmente chamada linguagem hospedeira. Linguagens de programação como COBOL, C, PASCAL, PL/1, etc, admitem a SQL Embutida. A SQL divide-se em três grupos: - Linguagem de Definição de Dados (DDL) - Linguagem de Controle de Dados (DCL) - Linguagem de Manipulação de Dados (DML) Linguagem de Definição de Dados (DDL) Tem como objetivo definir, alterar e eliminar as tabelas usadas para armazenar os dados. CREATE, ALTER, DROP, RENAME, são comandos de definição de dados, dentre outros. Em SQL as tabelas possuem a função de armazenar os dados do Banco de Dados. O comando para criação de tabelas no SQL é o CREATE TABLE. Sintaxe (Básica): CREATE TABLE nome_da_tabela_base (nome_de_coluna tipo_de_dado (tamanho) [NOT NULL [UNIQUE] ],... ) CONSTRAINT nome_da_constraint PRIMARY KEY (nome_de_coluna) TABLESPACE nome_tablespace; Onde: nome_da_tabela_base É o nome que identifica a tabela. nome_de_coluna É o nome identificador da coluna. Tipo_de_dado(tamanho) É o tipo de dado da coluna. Os tipos básicos são: CHAR, VARCHAR2, NUMBER, DATE. NOT NULL Pode ser especificado em qualquer coluna da tabela. Faz com que a coluna não admita nulos, isto é, qualquer tentativa de se introduzir um nulo em tal coluna será rejeitada.
7 7 UNIQUE Pode ser especificado para qualquer coluna ou combinação de coluna da tabela. Cada uma dessas colunas, ou cada coluna em uma combinação de colunas, também deve Ter a especificação de NOT NULL. Qualquer tentativa de se introduzir uma linha na tabela, contendo um valor igual à mesma coluna em alguma outra linha, será rejeitada. Se UNIQUE não for especificado para uma dada coluna (ou combinação), então essa coluna (ou combinação) pode conter valores duplicados. Nome_da_constraint É o nome da chave primária, atributo identificador da tabela. nome_tablespace É o nome do tablespace (Objeto lógico) que armazena os arquivos físicos do Oracle (datafiles). Os comandos CREATE TABLE para as tabelas seriam: a)para a tabela ALUNO CREATE TABLE T_Aluno (MATRICULA VARCHAR2(06) NOT NULL, NOME_ALUNO VARCHAR2(40) NOT NULL) CONSTRAINT pk_aluno PRIMARY KEY(MATRICULA), TABLESPACE st_01; a)para a tabela DISCIPLINA CREATE TABLE T_Disciplina (COD_DISCIPLINA VARCHAR2(04) NOT NULL, NOME_DISCIPLINA VARCHAR2(30) NOT NULL) CONSTRAINT pk_disciplina PRIMARY KEY(COD_DISCIPLINA), TABLESPACE st_01; C) Para a tabela CURSA CREATE TABLE T_Cursa (MATRICULA VARCHAR2(06) NOT NULL, COD_DISCIPLINA VARCHAR2(04) NOT NULL, NOTA1 NUMBER(3,1), NOTA2 NUMBER(3,1), NOTA3 NUMBER(3,1)) CONSTRAINT pk_cursa PRIMARY KEY(MATRICULA,COD_DISCIPLINA) TABLESPACE st_01; Obs.: O comando CREATE TABLE apenas cria a tabela, ou seja, apenas cria a estrutura da tabela. Elas precisam, num segundo passo, serem povoadas. Linguagem de Controle de Dados (DCL) A DCL (Data Control Language) contém elementos que serão úteis num sistema multiusuário, onde a privacidade das informações é importante, a segurança das tabelas, bem como o controle dos privilégios dos usuários do BD. Os comandos Grant, Revoke, Audit, No Audit, Lock são comandos da DCL.
8 8 Exemplos: 1)GRANT SELECT, INSERT ON T_DEPARTAMENTO TO JOAO; Dá os privilégios de Select e Insert para o usuário João, na tabela T_Departamento. 1)REVOKE INSERT ON T_DEPARTAMENTO TO JOAO; Retira o privilégio de inserção de dados (Insert) do usuário João, na tabela T_Departamento. Linguagem de Manipulação de Dados (DML) Esta linguagem contém os componentes da linguagem e conceitos para a manipulação das informações armazenadas em tabelas. Os comandos SELECT, UPDATE, DELETE, INSERT, COMMIT, ROLLBACK, dentre outros, são comandos de manipulação de dados. Exemplos: INSERT INTO T_ALUNO VALUES ( 001, Joao da Silva ); Inserirá o registro de João da Silva na tabela T_Aluno. UPDATE T_SALARIO SET VAL_SALARIO_MINIMO = VAL_SALARIO_MINIMO * 1.2; Atualizará o salário mínimo, da tabela salário, em 20%. Iniciando uma Sessão SQL*Plus Executar o SQL*Plus e logar-se. C:\>SQLPLUS<Enter> Enter user name: manoel Enter password: ******* O prompt do SQL*Plus será exibido. SQL> Para sair (terminar uma sessão SQL*Plus), digitar exit. SQL>exit OBS.:
9 9 O SQL*Plus possui um help. Basta digitar help ou help <comando> no prompt do SQL*Plus. Ex.: HELP UPDATE Vendo a estrutura de uma tabela O comando DESCRIBE exibe a estrutura da tabela especificada, isto é, o nome, tipo, tamanho e se o campo é de preenchimento obrigatório ou não. EX.: DESCRIBE T_ALUNO Name NULL Type MATRICULA NOT NULL VARCHAR2(06) NOME_ALUNO NOT NULL VARCHAR2(40) TIPOS DE DADOS BÁSICOS CHAR O tipo CHAR armazena seqüência de caracteres de tamanho fixo que consistem de letras, números, caracteres especiais. O tamanho não pode ultrapassar 255 bytes. Em SQL Padrão, quando um dado possui um tamanho menor que o especificado para a coluna, espaços em branco são acrescentados à direita. O tamanho default é 1. (Não é aconselhável este tipo de dados apartir do Banco Oracle 8i). VARCHAR2 Armazena seqüências de caracteres de tamanho variável que consistem de letras, números, caracteres especiais. O tamanho máximo é de O tamanho default é 1. VARCHAR Idem ao VARCHAR2 NUMBER(T,D) Onde T significa o tamanho do campo e D a quantidade de casas decimais (se for o caso). DATE Tipo de dado usado para datas e horas (intervalo: 01 de janeiro de 4712 AC e 31 de dezembro de 4712 DC). LONG Idem ao VARCHAR2, mas com tamanho máximo de 2 Gigabytes. CLOB Tipo de Dado usado para armazenamento de caracteres de grandes objetos. O Tamanho máximo é de 4 Gb. BLOB Tipo de Dado usado para armazenamento binário de grandes objetos. O Tamanho máximo é de 4 Gb.
10 10 BFILE Tipo de Dado que contém a localização de um arquivo binário armazenado fora do banco de dados. Tamanho máximo de 4Gb. * Existem outros tipos de dados, mas estes são variações dos tipos apresentados acima. SELECIONANDO DADOS: COMANDO SELECT O comando mais fundamental da linguagem SQL para manipulação dos dados é o SELECT. Com ele é que produzimos as Queries, ou seja,as pesquisas no Banco de Dados. Sua sintaxe é: SELECT [DISTINCT] (quais colunas queremos) FROM (de qual(is) tabela(s) ) [WHERE (condição de pesquisa) ] [GROUP BY colunas [HAVING condição ] ] [ORDER BY colunas ] Exemplos de Queries : 1)SELECT * FROM ALUNO; Retorna todas as linhas e todas as colunas da tabela ALUNO. 1)SELECT MATRICULA, NOME_ALUNO FROM ALUNO; Idem à Query acima. 1)SELECT MATRICULA, NOME_ALUNO FROM ALUNO WHERE NOME_ALUNO = JOAO DA SILVA ; Retorna os dados dos alunos que tenham nome igual a JOAO DA SILVA. 1)SELECT MATRICULA FROM CURSA WHERE ((NOTA1+NOTA2+NOTA3)/3) > 7 AND CD_DISCIPLINA = PORT ; Retorna a matrícula de todos os alunos que obtiveram média acima de sete na disciplina PORT. 1)SELECT MATRICULA, CD_DISCIPLINA, NOTA1 FROM CURSA WHERE NOTA1 BETWEEN 5 AND 7; Retorna a relação de todas as matrículas, código da disciplina e nota1, cuja notas1 esteja contida entre 5 e 7, inclusive; 1)SELECT MATRICULA, CD DISCIPLINA FROM CURSA WHERE NOTA3 IS NULL; Retorna as matrículas e disciplinas que estão sem lançamento da nota3. 1)SELECT MATRICULA, NOME_ALUNO FROM ALUNO WHERE NOME_ALUNO LIKE JOAO% ;
11 11 Retorna a matrícula e o nome dos alunos chamados JOAO (independente de seus sobrenomes); 1)SELECT * FROM CURSA WHERE CD_DISCIPLINA IN ( MAT, PORT ); Retorna os dados dos alunos que cursam as disciplinas MAT e PORT. 1)SELECT DISTINCT NOME_ALUNO FROM ALUNO; Retorna o nome dos alunos da tabela Aluno, não exibindo os nomes duplicados. Denominamos Tabela_resultado o resultado de uma Query, isto é, a tabela resultante de um SELECT. OBS.: a)o predicado LIKE (exemplo 7) determina que a pesquisa será feita em todos os nomes que comecem com JOAO. O caractere % pode ser colocado também antes da palavra. EX.:... LIKE %MARIA%. b)o CARACTERE * (exemplo 1) pega todas as colunas da tabela. EXPRESSÕES ARITMÉTICAS Uma expressão é a combinação de um ou mais valores, operadores, e funções os quais avaliam para um valor. Expressões Aritméticas podem conter nome de colunas, valores numéricos constantes e operadores aritméticos: Operadores Descrições + Adição - Subtração * Multiplicação / Divisão SQL> SELECT 1+1 FROM DUAL; SQL> Select 12/4 Divisão from dual; DIVISÃO Se a sua expressão aritmética conter mais de um operador a prioridade é *,/ primeiro, então +,- segundo (deixe para direita se existir operadores com a mesma prioridade). No exemplo seguinte a multiplicação (250*12) é avaliada primeiro; então o valor do salário é adicionado no resultado da multiplicação (3000). Somente para linha do Smith: =3800
12 12 select ename, sal * 12 from emp; ENAME SAL+250* SMITH 3800 ALLEN 4600 WARD 4250 JONES 5975 Parênteses podem ser usados para especificar a ordem na qual serão executados es operadores, se, por exemplo, a adição e requerida antes da multiplicação. select ename, (sal + 250) * 12 from emp; ENAME (SAL+250)* SMITH ALLEN WARD JONES FUNÇÕES AGREGADAS A característica marcante das Funções Agregadas é que produzem um único valor a partir de uma coluna inteira de dados. Portanto, enquanto qualquer outro tipo de expressão retorna um valor para cada linha, as funções agregadas retornam um valor que representa um agregado dos valores referentes às várias linhas. O atributo de uma função agregada normalmente é um nome de coluna ou uma expressão que tenha um nome de coluna como componente por exemplo, salário * As funções MAX, MIN e COUNT aceitam caracteres e números, entretanto as funções AVG e SUM devem possuir como atributo coluna que seja do tipo numérico, pois elas operam aritmeticamente. Podemos utilizar as palavras-chave DISTINCT e ALL em funções agregadas tendo o seguinte efeito: -A palavra-chave ALL faz com que todos os valores, inclusive os repetidos, sejam aproveitados. -A palavra-chave DISTINCT faz com que os valore repetidos sejam ignorados. Em todas as funções o ALL é o deflua. Exemplos: 1)SELECT AVG(SALARIO) REGADO; 1)SELECT SUM(SALARIO) REGADO;
13 13 1)SELECT MAX(SALARIO) REGADO; 1)SELECT MAX(NOME) REGADO; 1)SELECT MIN(SALARIO) REGADO; 1)SELECT COUNT(NOME) REGADO; 1)SELECT COUNT(DISTINCT NOME) REGADO; ORDENANDO A TABELA RESULTADO A cláusula ORDER BY nos permite ordenar as linhas da tabela-resultado alfabética e numericamente, em ordem crescente ou decrescente. O default é a ordem crescente. Para fazer a classificação com base em uma expressão ou função, temos que representá-la com um número que identifique a sua posição na cláusula SELECT. Isto também é verdade para a cláusula GROUP BY. Exemplos: 1)SELECT NOME, TEL FROM FUNC ORDER BY NOME DESC; 1)SELECT COD_FUNC, NOME, BAIRRO FROM FUNC ORDER BY NOME, BAIRRO; 1)SELECT COD_FUNC, NOME, BAIRRO FROM FUNC ORDER BY BAIRRO, NOME; 1)SELECT NOME, SALARIO FROM FUNC ORDER BY 2 DESC; Obs: Normalmente os valores nulos de uma coluna são exibidos em primeiro lugar quando a mesma é classificada. REVERTENDO A ORDEM DEFAULT Usa-se o comando DESC após o nome da coluna especificada na cláusula order by. Exemplo:
14 14 SELECT DEPTNO, JOB, ENAME ORDER BY HIREDATE DESC; ORDENANDO POR VÁRIAS COLUNAS É possível ordenar por mais de uma coluna. De fato, o limite é o número de colunas na tabela. Para ordenar por duas colunas e mostrar a ordem reversa dos salários, entre: SELECT DEPTNO, JOB, ENAME ORDER BY DEPTNO, SAL DESC; A CLÁUSULA WHERE Corresponde ao operador de restrição da álgebra relacional. Ela é colocada após a cláusula FROM. Exemplo da sintaxe: SELECT columns FROM table WHERE condição de pesquisa A cláusula WHERE pode comparar valores em colunas, valores literais, expressões aritméticas ou funções. Sendo assim, a cláusula WHERE espera por 3 elementos, são eles: 1º) Um nome de coluna; 2º) Um operador de comparação; 3º) Um nome de coluna, constante ou lista de valores. Os operadores de comparação são usados na cláusula WHERE e podem ser divididos entre duas categorias, que são: LÓGICOS e SQL. Apresentamos abaixo os Operadores Lógicos, que testarão as seguintes condições: Operador Significado = igual a > maior que >= maior ou igual que < menor que <= menor ou igual que Utilizando caracteres string e datas na cláusula WHERE, torna-se necessário o uso de ( ) plicas. Como exemplo1, para listar nomes, números, funções(jobs) e departamentos de todos os CLERKS, entre: SELECT EMPNO, ENAME, JOB, DEPTNO
15 15 WHERE JOB = CLERK ; Como exemplo2, para encontrar todos os nomes de departamento com número maior que 20, entre: SELECT DNAME, DEPTNO FROM DEPT WHERE DEPTNO > 20; COMPARANDO COLUNAS NA MESMA LINHA Você pode comparar uma coluna a outra na mesma linha, assim como a uma constante. Como exemplo, suponha que você queira obter todos aqueles empregados cuja comissão é maior que os seus salários: SELECT ENAME, SAL, COMM WHERE COMM>SAL; Abaixo apresentaremos os Operadores SQL, os quais operam com todos os tipos de dados: Operadores Significado 1º) BETWEEN... AND... entre dois valores (inclusive); 2º) IN(LIST) verifica um argumento de pesquisa, numa lista de valores que satisfaçam a esta determinada condição; 3º) LIKE facilita a pesquisa dada uma parte da string; 4º) IS NULL é um valor nulo. 1º) O OPERADOR BETWEEN Testa condição de valores mediante um limite mínimo e máximo inclusive. Como exemplo, suponha que você queira obter todos os empregados, cujo salário está entre 1000 e 2000: SELECT ENAME, SAL WHERE SAL BETWEEN 1000 AND 2000; 2 ) O OPERADOR IN Testa valores numa lista específica.
16 16 Como exemplo, para obter todos os empregados subordinados a um dos três gerentes destacados pelos números abaixo, entre: SELECT EMPNO, ENAME, SAL, MGR WHERE MGR IN (7902, 7566, 7788); Nota: É obrigatório o uso de ( ) plicas para caracteres e datas especificados na lista. 3º) O OPERADOR LIKE Algumas vezes, pode ser que você não saiba exatamente o valor à pesquisar. Usando o operador LIKE será possível então, selecionar linhas mediante a uma parte da string que sirva para o argumento desejado. Temos o símbolo abaixo com sua designação: Símbolo Significado % Representa qualquer sequência de Zero ou mais caracteres. Como exemplo, para listar todos os empregados cujo nome se inicia com um S, entre: SELECT ENAME WHERE ENAME LIKE S% ; 4º) O OPERADOR NULL É o operador específico para testar valores que são nulos. Como exemplo, para obter todos os empregados que não tenham gerentes, deve ser feito o teste para um valor nulo. SELECT ENAME, MGR WHERE MGR IS NULL; EXPRESSÕES DE NEGAÇÃO Os seguintes operadores são utilizados como teste de negação: Operador Descrição!= não é igual a (VAX, UNIX, PC) <> não é igual a NOT COLNAME = não é igual a
17 17 NOT COLNAME > não é maior que Abrangendo-se também os operadores SQL: Operador NOT BETWEEN NOT IN NOT LIKE IS NOT NULL Descrição não se encontra entre dois valores dados não se encontra numa lista de valores de dados não é como a string não é um valor nulo Como exemplo1, para encontrar os empregados cujo Salário não está entre um determinado intervalo, entre: SELECT ENAME, SAL WHERE SAL NOT BETWEEN 1000 AND 2000; Como exemplo2, para encontrar aqueles empregados cujo nome da função (Job) não comece com a letra M, entre: SELECT ENAME, JOB WHERE JOB NOT LIKE M% ; Como exemplo3, para encontrar todos os empregados que tenham um Gerente (MGR), entre: SELECT ENAME, MGR WHERE MGR IS NOT NULL; CONSULTANDO DADOS COM MÚLTIPLAS CONDIÇÕES Os operadores AND e OR podem ser usados para estabelecer expressões lógicas compostas. O operador AND em determinada expressão, é usado para que se atinja um resultado em que ambas as condições sejem verdadeiras; enquanto o operador OR espera que uma das condições sejem verdadeiras para que o resultado também seje verdadeiro. Como exemplo1, para encontrar todos os (CLERKS) que ganhem entre 1000 e 2000, entre: SELECT EMPNO, ENAME, JOB, SAL WHERE SAL BETWEEN 1000 AND 2000 AND JOB = CLERK ;
18 18 Como exemplo2, para encontrar todos os empregados que sejam CLERK e/ou todos os empregados que ganhem entre 1000 e 2000, entre: SELECT EMPNO, ENAME, JOB, SAL WHERE SAL BETWEEN 1000 AND 2000 OR JOB = CLERK ; Nota: Você pode combinar AND e OR na mesma expressão lógica. Quando AND e OR aparecerem na mesma cláusula WHERE, todos os AND s serão executados primeiro e os OR s em seguida sucessivamente; pois o AND tem maior precedência sobre o OR. Como exemplo3, o comando abaixo retornará todos os gerentes com salário > 1.500,00 ou todos que sejem vendedores. SELECT EMPNO, ENAME, JOB, SAL, DEPTNO WHERE SAL > 1.500,00 AND JOB = MANAGER OR JOB = SALESMAN ; Os parêntesis especificam a sequência em que os operadores serão executados. Como exemplo, selecionar todos os gerentes e vendedores com salário maior que 1.500,00, entre: SELECT EMPNO, ENAME, JOB, SAL, DEPTNO WHERE SAL > 1, AND (JOB = `MANAGER` OR JOB = `SALESMAN`); PRECEDÊNCIA DE OPERADORES Todos os operadores obedecem a uma forma hierárquica de precedência. Numa expressão, as operações são executadas em ordem de suas precedências, sempre da de maior precedência para a de menor. E quando de mesma precedência, serão executadas da esquerda para a direita. Estão assim na ordem abaixo: 1º Todos operadores de comparação e os operadores SQL têm igual precedência (=,!=, <, >, <=, >=, BETWEEN... AND, IN, LIKE, IS NULL; 2º NOT ( reverte resultados de expressões lógicas); 3º AND; 4º OR. SUBQUERYS
19 19 Uma subquery é um comando select dentro de um outro comando select onde retorna uma ou mais linhas a fim de satisfazer uma clausula WHERE. No exemplo abaixo temos um select em s_emp onde procuramos trazer o last_name e o title, onde o title pesquisado seja o mesmo do " Smith", para isso é realizado uma subquery que nada mais é que um select, que neste caso retorna um valor somente para a comparação na where. SQL> select last_name, title 2 from s_emp 3 where title = 4 (select title 5 from s_emp 6 where last_name = 'Smith'); LAST_NAME TITLE Maduro Stock Clerk Smith Stock Clerk Nozaki Stock Clerk Patel Stock Clerk Newman Stock Clerk Markarian Stock Clerk Chang Stock Clerk Patel Stock Clerk Dancs Stock Clerk Schwartz Stock Clerk 10 rows selected. Outro exemplo de subquery, que neste caso está comparando os valores da coluna SALARY com a média dos salários da tabela s_emp. A função AVG está trazendo a média dos salários. SQL> select last_name, title, salary 2 from s_emp 3 where salary< 4 (select avg(salary) 5 from s_emp); LAST_NAME TITLE SALARY Urguhart Warehouse Manager 1200 Menchu Warehouse Manager 1250 Biri Warehouse Manager 1100 Smith Stock Clerk 940 Nozaki Stock Clerk 1200 Patel Stock Clerk 795 Newman Stock Clerk 750 Markarian Stock Clerk 850 Chang Stock Clerk 800 Patel Stock Clerk 795 Dancs Stock Clerk 860
20 20 Schwartz Stock Clerk rows selected. Nos exemplos anteriores vemos que retornavam só um único valor para comparação na clausula where, neste caso agora há o retorno de mais de um valor para a comparação na clausula where, mas para que ocorra a comparação com mais de um valor temos que usar o IN em vez do "=" no exemplo abaixo ocorre um erro: SQL> select last_name, title 2 from s_emp 3 where dept_id = 4 (select id from s_dept 5 where name = 'finance or region_id = 2); select last_name, title * ERROR at line 1: ORA-01756: quoted string not properly terminated Agora usando o IN na clausula where poderá o dept_id ser comparado com as duas condições, o select trará os registros que na tabela s_dept que tenham o nome igual a 'Finace' ou que a region_id seja igual a 2. SQL> select last_name,first_name,title 2 from s_emp 3 where dept_id in 4 (select id 5 from s_dept 6 where name = 'Finance' or region_id =2); LAST_NAME FIRST_NAME TITLE Quick-To-See Mark VP, Finance Menchu Roberta Warehouse Manager Giljum Henry Sales Representative Nozaki Akira Stock Clerk Patel Vikram Stock Clerk O uso do having em subquery Neste exemplo estamos querendo selecionar o dept_id e a média dos salários de s_emp, grupados pelo dept_id, com a condição de que a média dos salários de s_emp seja maior que a média dos salários do dept 32 para isso usamos o HAVING. Vamos ao Exemplo: SQL> select dept_id,avg(salary) 2 from s_emp 3 group by dept_id 4 having avg(salary)> 5 (select avg(salary) 6 from s_emp 7 where dept_id = 32);
Banco de Dados. Prof. Antonio
Banco de Dados Prof. Antonio SQL - Structured Query Language O que é SQL? A linguagem SQL (Structure query Language - Linguagem de Consulta Estruturada) é a linguagem padrão ANSI (American National Standards
Leia maisSQL Linguagem de Definição de Dados. Laboratório de Bases de Dados Profa. Dra. Cristina Dutra de Aguiar Ciferri
SQL Linguagem de Definição de Dados SQL Structured Query Language Uma das mais importantes linguagens relacionais (se não a mais importante) Exemplos de SGBD que utilizam SQL Oracle Informix Ingress SQL
Leia maisIntrodução à Banco de Dados. Nathalia Sautchuk Patrício
Introdução à Banco de Dados Nathalia Sautchuk Patrício Histórico Início da computação: dados guardados em arquivos de texto Problemas nesse modelo: redundância não-controlada de dados aplicações devem
Leia maisLinguagem de Consulta Estruturada SQL- DML
Linguagem de Consulta Estruturada SQL- DML INTRODUÇÃO A SQL - Structured Query Language, foi desenvolvido pela IBM em meados dos anos 70 como uma linguagem de manipulação de dados (DML - Data Manipulation
Leia maisControle de transações em SQL
Transações Controle de transações em SQL Uma transação é implicitamente iniciada quando ocorre uma operação que modifica o banco de dados (INSERT, UPDATE ou DELETE). Uma transação pode terminar normalmente
Leia mais2008.1 SQL. Autor: Renata Viegas
SQL Autor: Renata Viegas A linguagem SQL SQL - Structured Query Language. Foi definida nos laboratórios de pesquisa da IBM em San Jose, California, em 1974. Teve seus fundamentos no modelo relacional Sua
Leia maisProgramação SQL. Introdução
Introdução Principais estruturas duma Base de Dados: Uma BD relacional é constituída por diversas estruturas (ou objectos ) de informação. Podemos destacar: Database: designa a própria BD; Table/Tabela:
Leia maisFaculdade Pitágoras 16/08/2011. Curso Superior de Tecnologia: Banco de Dados Sistemas para Internet
Faculdade Pitágoras Curso Superior de Tecnologia: Banco de Dados Sistemas para Internet Disciplina: Banco de Dados Prof.: Fernando Hadad Zaidan SQL A linguagem SQL é responsável por garantir um bom nível
Leia maisComandos de Manipulação
SQL - Avançado Inserção de dados; Atualização de dados; Remoção de dados; Projeção; Seleção; Junções; Operadores: aritméticos, de comparação,de agregação e lógicos; Outros comandos relacionados. SQL SQL
Leia maisFaculdade Pitágoras. Curso Superior de Tecnologia: Banco de Dados. Disciplina: Banco de Dados Prof.: Fernando Hadad Zaidan SQL
Faculdade Pitágoras Curso Superior de Tecnologia: Banco de Dados Disciplina: Banco de Dados Prof.: Fernando Hadad Zaidan SQL A linguagem SQL é responsável por garantir um bom nível de independência do
Leia mais2008.1. A linguagem SQL
SQL 2008.1 A linguagem SQL SQL - Structured Query Language. Foi definida nos laboratórios de pesquisa da IBM em San Jose, California, em 1974. Teve seus fundamentos no modelo relacional Sua primeira versão
Leia maisSQL Structured Query Language
Janai Maciel SQL Structured Query Language (Banco de Dados) Conceitos de Linguagens de Programação 2013.2 Structured Query Language ( Linguagem de Consulta Estruturada ) Conceito: É a linguagem de pesquisa
Leia maisO que são Bancos de Dados?
SQL Básico Liojes de Oliveira Carneiro professor.liojes@gmail.com www.professor-liojes.blogspot.com O que são Bancos de Dados? É o software que armazena, organiza, controla, trata e distribui os dados
Leia maisStructured Query Language (SQL)
SQL Histórico Structured Query Language (SQL) Foi desenvolvido pela IBM em meados dos anos 70 como uma linguagem de manipulação de dados (DML - Data Manipulation Language) para suas primeiras tentativas
Leia maisPHP INTEGRAÇÃO COM MYSQL PARTE 1
INTRODUÇÃO PHP INTEGRAÇÃO COM MYSQL PARTE 1 Leonardo Pereira leonardo@estudandoti.com.br Facebook: leongamerti http://www.estudandoti.com.br Informações que precisam ser manipuladas com mais segurança
Leia maisLinguagem SQL Sub-linguagem DDL
Linguagem SQL Sub-linguagem DDL A SQL - Structured Query Language, foi desenvolvido pela IBM em meados dos anos 70 como uma linguagem de manipulação de dados (DML - Data Manipulation Language para suas
Leia maisSQL Linguagem de Manipulação de Dados. Banco de Dados Profa. Dra. Cristina Dutra de Aguiar Ciferri
SQL Linguagem de Manipulação de Dados Banco de Dados SQL DML SELECT... FROM... WHERE... lista atributos de uma ou mais tabelas de acordo com alguma condição INSERT INTO... insere dados em uma tabela DELETE
Leia maisBásico da Linguagem SQL. Definição de Esquemas em SQL. SQL(Structured Query Language)
Básico da Linguagem SQL Definição de Esquemas em SQL SQL(Structured Query Language) Desenvolvida como a linguagem de consulta do protótipo de SGBD Sistema R (IBM, 1976). Adotada como linguagem padrão de
Leia maisPrincipais Comandos SQL Usados no MySql
Principais Comandos SQL Usados no MySql O que é um SGBD? Um Sistema Gerenciador de Banco de Dados (como no Brasil) ou Sistema Gestor de Base de Dados (SGBD) é o conjunto de programas de computador (softwares)
Leia maisBanco de Dados I. Aula 12 - Prof. Bruno Moreno 04/10/2011
Banco de Dados I Aula 12 - Prof. Bruno Moreno 04/10/2011 Plano de Aula SQL Definição Histórico SQL e sublinguagens Definição de dados (DDL) CREATE Restrições básicas em SQL ALTER DROP 08:20 Definição de
Leia maisSQL. SQL (Structured Query Language) Comando CREATE TABLE. SQL é uma linguagem de consulta que possibilita:
SQL Tópicos Especiais Modelagem de Dados Prof. Guilherme Tavares de Assis Universidade Federal de Ouro Preto UFOP Instituto de Ciências Exatas e Biológicas ICEB Mestrado Profissional em Ensino de Ciências
Leia maisAPOSTILA BANCO DE DADOS INTRODUÇÃO A LINGUAGEM SQL
1. O que é Linguagem SQL 2. Instrução CREATE 3. CONSTRAINT 4. ALTER TABLE 5. RENAME TABLE 6. TRUCANTE TABLE 7. DROP TABLE 8. DROP DATABASE 1 1. O que é Linguagem SQL 2. O SQL (Structured Query Language)
Leia maisSQL UMA ABORDAGEM INTERESSANTE
SQL é uma linguagem de consulta estruturada, do inglês Structured Query Language. É uma linguagem de pesquisa declarativa para banco de dados relacional (base de dados relacional). Muitas das características
Leia maisSQL Linguagem de Definição de Dados. Banco de Dados Profa. Dra. Cristina Dutra de Aguiar Ciferri
SQL Linguagem de Definição de Dados Banco de Dados SQL Structured Query Language Uma das mais importantes linguagens relacionais (se não a mais importante) Exemplos de SGBD que utilizam SQL Oracle Informix
Leia maisSQL - Banco de Dados. Disciplina: Banco de Dados. Professor: José Antônio. José Antônio - CEFET-RN 23/09/2015
SQL - Banco de Dados 1 Disciplina: Banco de Dados Professor: José Antônio 2 Tópicos de discussão Criando um banco de dados Incluindo, atualizando e excluindo linhas nas tabelas Pesquisa básica em tabelas
Leia maisMODELO DE DADOS VS ESQUEMA
MODELO DE DADOS VS ESQUEMA Um modelo de dados é um conjunto de conceitos usados para se descrever dados. Um esquema é uma descrição de uma determinada coleção de dados, descrição essa baseada num certo
Leia maisBanco de Dados. Marcio de Carvalho Victorino www.dominandoti.eng.br. Exercícios SQL
Banco de Dados Exercícios SQL 1 TRF (ESAF 2006) 32. Analise as seguintes afirmações relacionadas a Bancos de Dados e à linguagem SQL: I. A cláusula GROUP BY do comando SELECT é utilizada para dividir colunas
Leia maisUNIVERSIDADE FEDERAL DE SANTA MARIA - UFSM COLÉGIO AGRÍCOLA DE FREDERICO WESTPHALEN BANCO DE DADOS II
UNIVERSIDADE FEDERAL DE SANTA MARIA - UFSM COLÉGIO AGRÍCOLA DE FREDERICO WESTPHALEN BANCO DE DADOS II BANCO DE DADOS II AULA 3 Linguagem SQL Linguagem de manipulação de dados (DML) DISCIPLINA: Banco de
Leia maisEXEMPLOS DE COMANDOS NO SQL SERVER
EXEMPLOS DE COMANDOS NO SQL SERVER Gerenciando Tabelas: DDL - DATA DEFINITION LANGUAG Criando uma tabela: CREATE TABLE CLIENTES ID VARCHAR4 NOT NULL, NOME VARCHAR30 NOT NULL, PAGAMENTO DECIMAL4,2 NOT NULL;
Leia maisSQL SQL BANCO DE DADOS 2. Componentes do SQL (1) Componentes do SQL (2) DDL Criação de banco de dados. Padrões de SQL
BANCO DE DADOS 2 SQL (CREATE TABLE, CONSTRAINTS, DELETE, UPDATE e INSERT) Prof. Edson Thizon SQL SQL ( structured query language ) é uma linguagem comercial de definição e manipulação de banco de dados
Leia maisIntrodução ao SQL. O que é SQL?
Introdução ao SQL 1 O que é SQL? Inicialmente chamada de Sequel, SQL (Structured Query Language), é a linguagem padrão utilizada para comunicar-se com um banco de dados relacional. A versão original foi
Leia maisSQL DML. Frederico D. Bortoloti freddb@ltc.ufes.br
Banco de Dados I SQL DML Frederico D. Bortoloti freddb@ltc.ufes.br SQL - DML Os exemplos da aula serão elaborados para o esquema de dados a seguir: Empregado(matricula, nome, endereco, salario, supervisor,
Leia maisBANCO DE DADOS BANCO DE DADOS. Prof. Patrícia Lucas 3º Trimestre
BANCO DE DADOS BANCO DE DADOS Prof. Patrícia Lucas 3º Trimestre ROTEIRO PARA O 3º TRIMESTRE 1. O MySQL DDL SQL 1. Como funciona o MySQL 2. Como criar um banco de dados no MySQL 3. Como criar tabelas: comandos
Leia maisLINGUAGEM SQL. DML - Linguagem de Manipulação de Dados
LINGUAGEM SQL Structured Query Language, ou Linguagem de Consulta Estruturada ou SQL, é uma linguagem de pesquisa declarativa para banco de dados relacional (base de dados relacional). Muitas das características
Leia maisSQL. Curso Prático. Celso Henrique Poderoso de Oliveira. Novatec
SQL Curso Prático Celso Henrique Poderoso de Oliveira Novatec 1 Introdução Desde o início da utilização dos computadores, sabemos que um sistema é feito para aceitar entrada de dados, realizar processamentos
Leia maisIntrodução à Engenharia da Computação. Banco de Dados Professor Machado
Introdução à Engenharia da Computação Banco de Dados Professor Machado 1 Sistemas isolados Produção Vendas Compras Banco de Dados Produtos... Banco de Dados Produtos... Banco de Dados Produtos... Desvantagens:
Leia mais1. Domínio dos Atributos
Structure Query Language SQL Guilherme Pontes lf.pontes.sites.uol.com.br 1. Domínio dos Atributos Por domínio, ou tipo, pode-se entender como a maneira como determinado atributo (ou campo, se tratando
Leia maisStructured Query Language (SQL) Ambiente Simplificado de um SGBD
Structured Query Language (SQL) Ambiente Simplificado de um SGBD 2 1 Características dos SGBDs Natureza auto-contida de um sistema de banco de dados: metadados armazenados num catálogo ou dicionário de
Leia maisProf. Carlos Majer Aplicações Corporativas UNICID
Este material pertence a Carlos A. Majer, Professor da Unidade Curricular: Aplicações Corporativas da Universidade Cidade de São Paulo UNICID Licença de Uso Este trabalho está licenciado sob uma Licença
Leia maisSQL é uma linguagem de consulta que implementa as operações da álgebra relacional de forma bem amigável.
SQL (Structured Query Language) SQL é uma linguagem de consulta que implementa as operações da álgebra relacional de forma bem amigável. Além de permitir a realização de consultas, SQL possibilita: definição
Leia maisAULA 2 INTERAÇÃO COM O BANCO DE DADOS
AULA 2 INTERAÇÃO COM O BANCO DE DADOS BANCO DE DADOS POSTGRESQL O PostgreSQL é um sistema gerenciador de banco de dados dos mais robustos e avançados do mundo. Seu código é aberto e é totalmente gratuito,
Leia maisÁlgebra Relacional. Conjunto de operações que usa uma ou duas relações como entrada e gera uma relação de saída. Operações básicas:
Álgebra Relacional Conjunto de operações que usa uma ou duas relações como entrada e gera uma relação de saída operação (REL 1 ) REL 2 operação (REL 1,REL 2 ) REL 3 Operações básicas: seleção projeção
Leia maisBanco de Dados. StructuredQuery Language- SQL. Prof. Walteno Martins Parreira Jr www.waltenomartins.com.br waltenomartins@yahoo.
Banco de Dados StructuredQuery Language- SQL Prof. Walteno Martins Parreira Jr www.waltenomartins.com.br waltenomartins@yahoo.com 2015 A Origem Em 1970, Ted Codd (pesquisador da IBM) publicou o primeiro
Leia maisComandos DDL. id_modulo = id_m odulo
Comandos DDL Estudo de Caso Controle Acadêmico Simplificado Uma escola contém vários cursos, onde cada aluno possui uma matricula num determinado curso. Estes cursos, por sua vez, possuem módulos, aos
Leia maisTarefa Orientada 15 Manipulação de dados
Tarefa Orientada 15 Manipulação de dados Objectivos: Criação de tabelas teste Comando INSERT INTO Inserção de dados Comando INSERT Actualização de dados Comando UPDATE Eliminação de dados Comando DELETE
Leia maisTarefa Orientada 13 Agrupamento e sumário de dados
Tarefa Orientada 13 Agrupamento e sumário de dados Objectivos: Funções de agregação Agrupamento e sumário de dados Funções de agregação Nesta tarefa orientada iremos formular consultas que sumariam os
Leia maisSQL comando SELECT. SELECT [DISTINCT] <campos> FROM <tabela> [condição] [ ; ] Paulo Damico - MDK Informática Ltda.
SQL comando SELECT Uma das tarefas mais requisitadas em qualquer banco de dados é obter uma listagem de registros armazenados. Estas tarefas são executadas pelo comando SELECT Sintaxe: SELECT [DISTINCT]
Leia maisExercícios de Lógica Exercícios de Fixação 08
Exercícios Exercícios de Lógica Exercícios de Fixação 08 1. A linguagem SQL apresenta uma série de comandos que permitem a definição dos dados, chamada de DDL (Data Definition Language). Assinale a alternativa
Leia maisSQL. Prof. Márcio Bueno. {bd2tarde,bd2noite}@marciobueno.com
SQL Prof. Márcio Bueno {bd2tarde,bd2noite}@marciobueno.com Material dos professores Ana Carolina Salgado, Fernando Foncesa e Valéria Times (CIn/UFPE) SQL SQL - Structured Query Language Linguagem de Consulta
Leia maisNOME SEXO CPF NASCIMENTO SALARIO
Tutorial SQL Fonte: http://www.devmedia.com.br/articles/viewcomp.asp?comp=2973 Para começar Os Sistemas Gerenciadores de Bancos de Dados Relacionais (SGBDr) são o principal mecanismo de suporte ao armazenamento
Leia maisBANCO DE DADOS: SQL. Edson Anibal de Macedo Reis Batista. 27 de janeiro de 2010
BANCO DE DADOS: SQL UERN - Universidade do Estado do Rio Grande do Norte. Departamento de Ciências da Computação. 27 de janeiro de 2010 índice 1 Introdução 2 3 Introdução SQL - Structured Query Language
Leia maisTarefa Orientada 16 Vistas
Tarefa Orientada 16 Vistas Objectivos: Vistas só de leitura Vistas de manipulação de dados Uma vista consiste numa instrução de SELECT que é armazenada como um objecto na base de dados. Deste modo, um
Leia maisLINGUAGEM SQL. SQL Server 2008 Comandos iniciais
1 LINGUAGEM SQL SQL Server 2008 Comandos iniciais SQL - STRUCTURED QUERY LANGUAGE Quando os Bancos de Dados Relacionais estavam sendo desenvolvidos, foram criadas linguagens destinadas à sua manipulação.
Leia maisTreinamento sobre SQL
Treinamento sobre SQL Como Usar o SQL Os dois programas que você mais utilizara no SQL Server são: Enterprise Manager e Query Analyzer. No Enterprise Manager, você pode visualizar e fazer alterações na
Leia maisORACLE 11 G INTRODUÇÃO AO ORACLE, SQL,PL/SQL. Carga horária: 32 Horas
ORACLE 11 G INTRODUÇÃO AO ORACLE, SQL,PL/SQL Carga horária: 32 Horas Pré-requisito: Para que os alunos possam aproveitar este treinamento ao máximo, é importante que eles tenham participado dos treinamentos
Leia maisBanco de Dados I Linguagem SQL Parte 2. Autor: Prof. Cláudio Baptista Adaptado por: Prof. Ricardo Antonello
Banco de Dados I Linguagem SQL Parte 2 Autor: Prof. Cláudio Baptista Adaptado por: Prof. Ricardo Antonello Introdução Como vimos, um SGBD possui duas linguagens: DDL: Linguagem de Definição de Dados. Usada
Leia maisSQL. Histórico BANCO DE DADOS. Conceito. Padrões de SQL (1) Componentes do SQL (1) Padrões de SQL (2) (DDL: CREATE TABLE, CONSTRAINTS)
BANCO DE DADOS SQL (DDL: CREATE TABLE, CONSTRAINTS) Prof. Edson Thizon Histórico Entre 1974 e 1979, o San José Research Laboratory da IBM desenvolveu um SGDB relacional que ficou conhecido como Sistema
Leia maisUNIVERSIDADE VEIGA DE ALMEIDA CURSO DE BACHARELADO EM CIÊNCIA DA COMPUTAÇÃO CURSO SUPERIOR DE TECNOLOGIA EM PROCESSAMENTO DE DADOS BANCO DE DADOS
CURSO DE BACHARELADO EM CIÊNCIA DA COMPUTAÇÃO CURSO SUPERIOR DE TECNOLOGIA EM PROCESSAMENTO DE DADOS CLAUDIO RIBEIRO DA SILVA MARÇO 1997 2 1 - CONCEITOS GERAIS DE 1.1 - Conceitos Banco de Dados - Representa
Leia maisLinguagem SQL (Parte I)
Universidade Federal de Sergipe Departamento de Sistemas de Informação Itatech Group Jr Softwares Itabaiana Site: www.itatechjr.com.br E-mail: contato@itatechjr.com.br Linguagem SQL (Parte I) Introdução
Leia maisCAPÍTULO 3 - TIPOS DE DADOS E IDENTIFICADORES
CAPÍTULO 3 - TIPOS DE DADOS E IDENTIFICADORES 3.1 - IDENTIFICADORES Os objetos que usamos no nosso algoritmo são uma representação simbólica de um valor de dado. Assim, quando executamos a seguinte instrução:
Leia maisSQL DDL. Frederico D. Bortoloti freddb@ltc.ufes.br
Banco de Dados I SQL DDL Frederico D. Bortoloti freddb@ltc.ufes.br Introdução Modelo relacional encontra-se padronizado pela indústria de informática. Ele é chamado de padrão SQL (Structured Query Language)
Leia maisUNIVERSIDADE FEDERAL DE SANTA MARIA - UFSM COLÉGIO AGRÍCOLA DE FREDERICO WESTPHALEN BANCO DE DADOS II
UNIVERSIDADE FEDERAL DE SANTA MARIA - UFSM COLÉGIO AGRÍCOLA DE FREDERICO WESTPHALEN BANCO DE DADOS II BANCO DE DADOS II AULA 1 Linguagem SQL Linguagem de definição de dados (DDL) DISCIPLINA: Banco de Dados
Leia maisIF685 Gerenciamento de Dados e Informação - Prof. Robson Fidalgo 1
IF685 Gerenciamento de Dados e Informação - Prof. Robson Fidalgo 1 Banco de Dados Fundamentos de SQL Structured Query Language Aula2 Apresentado por: Robson do Nascimento Fidalgo rdnf@cin.ufpe.br IF685
Leia maisBANCO DE DADOS WEB AULA 4. linguagem SQL: subconjuntos DCL, DDL e DML. professor Luciano Roberto Rocha. www.lrocha.com
BANCO DE DADOS WEB AULA 4 linguagem SQL: subconjuntos DCL, DDL e DML professor Luciano Roberto Rocha www.lrocha.com O que é SQL? Structured Query Language, ou Linguagem de Consulta Estruturada ou SQL,
Leia mais8. Outros tipos de Transação (Modo de Transação de Autoconfirmação e Modo Implícito)
8. Outros tipos de Transação (Modo de Transação de Autoconfirmação e Modo Implícito) Nos itens anteriores vimos transações do tipo explícitas, ou seja, aquelas que iniciam com BEGIN TRANSACTION. As outras
Leia maisSQL TGD/JMB 1. Projecto de Bases de Dados. Linguagem SQL
SQL TGD/JMB 1 Projecto de Bases de Dados Linguagem SQL SQL TGD/JMB 2 O que é o SQL? SQL ("ess-que-el") significa Structured Query Language. É uma linguagem standard (universal) para comunicação com sistemas
Leia maisProfº Aldo Rocha. Banco de Dados
Profº Aldo Rocha Banco de Dados HOJE! CREATE TABLE com uma Chave primária Primeiramente façam um SELECT na tabela pessoa. Percebam que não há NENHUMA CHAVE PRIMÁRIA. utilizem o comando SHOW CREATE TABLE
Leia maisFundamentos do Sistema Gerenciador de Banco de Dados
Fundamentos do Sistema Gerenciador de Banco de Dados Cláudio Luís V. Oliveira Janeiro de 2010 Definição "Um sistema cujo objetivo principal é gerenciar o acesso, a correta manutenção e a integridade dos
Leia maisUma expressão básica em SQL consiste em três cláusulas: select, from e where.
Introdução a Banco de Dados O.K. Takai; I.C.Italiano; J.E. Ferreira. 67 8 A Linguagem SQL A linguagem SQL é um padrão de linguagem de consulta comercial que usa uma combinação de construtores em Álgebra
Leia maisProf.: Clayton Maciel Costa clayton.maciel@ifrn.edu.br
Programação com acesso a BD Prof.: Clayton Maciel Costa clayton.maciel@ifrn.edu.br 1 Modelos de Dados, Esquemas e Instâncias 2 Modelos de Dados, Esquemas e Instâncias Modelo de dados: Conjunto de conceitos
Leia maisModelo de Dados Relacional Restrições de um Banco de Dados Relacional
Modelo de Dados Relacional e as Restrições de um Banco de Dados Relacional Modelo de Dados Relacional Conceitos do Modelo Relacional Representa o banco de dados como uma coleção de relações. Comparação
Leia maisSistemas de Banco de Dados Aspectos Gerais de Banco de Dados
Sistemas de Banco de Dados Aspectos Gerais de Banco de Dados 1. Conceitos Básicos No contexto de sistemas de banco de dados as palavras dado e informação possuem o mesmo significado, representando uma
Leia maisAula 4 Pseudocódigo Tipos de Dados, Expressões e Variáveis
1. TIPOS DE DADOS Todo o trabalho realizado por um computador é baseado na manipulação das informações contidas em sua memória. Estas informações podem ser classificadas em dois tipos: As instruções, que
Leia maisSQL - Criação de Tabelas
SQL - Criação de Tabelas André Restivo Faculdade de Engenharia da Universidade do Porto February 24, 2012 André Restivo (FEUP) SQL - Criação de Tabelas February 24, 2012 1 / 25 Sumário 1 Introdução 2 Tabelas
Leia maisBanco de dados 1. Linguagem SQL DDL e DML. Professor: Victor Hugo L. Lopes
Banco de dados 1 Linguagem SQL DDL e DML Professor: Victor Hugo L. Lopes Agenda: Introdução à linguagem de dados; DDL; DML; CRUD; Introdução à linguagem SQL. 2 Por que precisamos da linguagem SQL? A algebra
Leia maisEXERCÍCIOS PRÁTICOS. Banco de Dados
EXERCÍCIOS PRÁTICOS Banco de Dados Introdução ao uso do SQL Structured Query Language, considerando tanto DDL Data Definition Language quanto DML Data Manipulation Language. Banco de Dados selecionado:
Leia maisEx.: INSERT INTO tmpautor (CDAUTOR, NMAUTOR) VALUES (1, Renato Araújo )
Tecnologia em Análise e Desenvolvimento de Sistemas Disciplina: B1SGB - Sistemas Gerenciadores de Banco de Dados Memória de aula Aula 10 1) Incluindo linhas nas tabelas a. Para incluir linhas em tabelas
Leia maisSQL (Structured Querie Language) Escola Secundária de Emídio Navarro 2001/2002 Estruturas, Tratamento e Organização de Dados
SQL (Structured Querie Language) SQL é mais que uma linguagem de interrogação estruturada. Inclui características para a definição da estrutura de dados, para alterar os dados de uma base de dados, e para
Leia maisSQL APOSTILA INTRODUÇÃO A LINGUAGEM SQL
SQL APOSTILA INTRODUÇÃO Uma linguagem de consulta é a linguagem por meio da qual os usuários obtêm informações do banco de dados. Essas linguagens são, tipicamente, de nível mais alto que as linguagens
Leia mais3) Palavra-chave distinct (select-from). Obter apenas os pibs distintos entre si.
NOME: BRUNO BRUNELI BANCO DE DADOS - ADS create database ProducaoMinerais use ProducaoMinerais create table Mineral( nome varchar(15) primary key, preco real) create table Pais( nome varchar(30) primary
Leia mais1. SQL Instrumental...2 1.1 Select...3 1.2 Delete...13 1.3 Update... 1.4 Insert... 1.5 Group by... 1.6 Having... 1.7 Unnion All...
SQL 1. SQL Instrumental...2 1.1 Select...3 1.2 Delete...13 1.3 Update... 1.4 Insert... 1.5 Group by... 1.6 Having... 1.7 Unnion All... 2. Servidor... 2.1 Ativando log no Broker... 2.2 Leitura do log no
Leia maisRoteiro. Modelo de Dados Relacional. Processo de Projeto de Banco de Dados. BCC321 - Banco de Dados I. Ementa. Posicionamento.
Roteiro Modelo de Dados Relacional Posicionamento Luiz Henrique de Campos Merschmann Departamento de Computação Universidade Federal de Ouro Preto luizhenrique@iceb.ufop.br www.decom.ufop.br/luiz Introdução
Leia maisBanco de Dados. Maurício Edgar Stivanello
Banco de Dados Maurício Edgar Stivanello Agenda Conceitos Básicos SGBD Projeto de Banco de Dados SQL Ferramentas Exemplo Dado e Informação Dado Fato do mundo real que está registrado e possui um significado
Leia maisIntrodução ao SQL Avançado
Introdução ao SQL Avançado Introdução as consultas, manipulação e a filtragem de dados com a linguagem SQL Prof. MSc. Hugo Vieira L. Souza Este documento está sujeito a copyright. Todos os direitos estão
Leia maisProgramação WEB II. PHP e Banco de Dados. progweb2@thiagomiranda.net. Thiago Miranda dos Santos Souza
PHP e Banco de Dados progweb2@thiagomiranda.net Conteúdos Os materiais de aula, apostilas e outras informações estarão disponíveis em: www.thiagomiranda.net PHP e Banco de Dados É praticamente impossível
Leia maisEx.: INSERT INTO tmpautor (CDAUTOR, NMAUTOR) VALUES (1, Renato Araújo )
PRONATEC - Programador de Sistemas Banco de Dados 1) Incluindo linhas nas tabelas a. Para incluir linhas em tabelas utilize o comando INSERT INTO INSERT INTO tabela [ ( coluna [, coluna,...] ) ] VALUES
Leia maisIntrodução ao SQL. Aécio Costa
Aécio Costa A linguagem SQL é um padrão de linguagem de consulta comercial e possui as seguintes partes: Linguagem de definição de dados (DDL) Linguagem interativa de manipulação de dados (DML) Definição
Leia maisPrincipais Instruções em SQL
Instrução Principais Instruções em SQL Instrui o programa principal do banco de dados para retornar a informação como um conjunto de registros. Sintaxe [predicado { * tabela.* [tabela.]campo1 [AS alias1]
Leia mais&XUVRGH,QWURGXomRDR (GLWRUGH3ODQLOKDV([FHO
Universidade Federal de Viçosa Departamento de Informática &XUVRGH,QWURGXomRDR (GLWRUGH3ODQLOKDV([FHO Flaviano Aguiar Liziane Santos Soares Jugurta Lisboa Filho (Orientador) PROJETO UNESC@LA Setembro de
Leia maisTarefa Orientada 19 Triggers
Tarefa Orientada 19 Triggers Objectivos: Criar triggers AFTER Criar triggers INSTEAD OF Exemplos de utilização Os triggers são um tipo especial de procedimento que são invocados, ou activados, de forma
Leia maisCriando Banco de Dados, Tabelas e Campos através do HeidiSQL. Prof. Vitor H. Migoto de Gouvêa Colégio IDESA 2011
Criando Banco de Dados, Tabelas e Campos através do HeidiSQL Prof. Vitor H. Migoto de Gouvêa Colégio IDESA 2011 Edição 2 Pedreiros da Informação Criando Banco de Dados, Tabelas e Campos através do HeidiSQL
Leia maisS Q L 31/03/2010. SQL - Structured Query Language Linguagem de Consulta Estruturada
Gerenciamento de Dados e Informação Fernando Fonseca Ana Carolina Robson Fidalgo SQL SQL - Structured Query Language Linguagem de Consulta Estruturada Apesar do QUERY no nome, não é apenas de consulta,
Leia maisEscrito por Sex, 14 de Outubro de 2011 23:12 - Última atualização Seg, 26 de Março de 2012 03:33
Preço R$ 129.00 Compre aqui SUPER PACOTÃO 3 EM 1: 186 Vídeoaulas - 3 dvd's - 10.5 Gybabyte. 1) SQL 2) Banco de Dados (Oracle 10g, SQL Server 2005, PostgreSQL 8.2, Firebird 2.0, MySQL5.0) 3) Análise e Modelagem
Leia maisLinguagem SQL Parte I
FIB - Centro Universitário da Bahia Banco de Dados Linguagem SQL Parte I Francisco Rodrigues Santos chicowebmail@yahoo.com.br Slides gentilmente cedidos por André Vinicius R. P. Nascimento Conteúdo A Linguagem
Leia maisPedro F. Carvalho OCP Oracle 2008.2 10g LINGUAGEM SQL. www.pedrofcarvalho.com.br contato@pedrofcarvalho.com.br São José do Rio Preto
Pedro F. Carvalho OCP Oracle 2008.2 10g LINGUAGEM SQL Objetivos Revisando a sintaxe SQL SELECT, UPDATE, INSERT, DELETE Manipulando expressões Funções matemáticas, etc Condições de Pesquisa Funções de Agregação
Leia maisAULA 6 INTEGRIDADOS DOS DADOS - CRIANDO RESTRIÇÕES
BANCO DE DADOS GERENCIAL 1 AULA 6 INTEGRIDADOS DOS DADOS - CRIANDO RESTRIÇÕES Integridade de domínio A integridade de domínio é a validade de entradas para uma coluna específica. É possível aplicar a integridade
Leia maisTarefa Orientada 14 Subconsultas
Tarefa Orientada 14 Subconsultas Objectivos: Subconsultas não correlacionadas Operadores ALL, SOME e ANY Subconsultas correlacionadas Operador EXISTS Subconsultas incluídas na cláusula FROM de uma consulta
Leia maisBanco de Dados. Um momento crucial na organização dos dados é a forma com que cadastramos estes dados, a estrutura de armazenamento que criamos.
Banco de Dados O que é um Banco de Dados? Este assunto é muito vasto, tentaremos resumi-lo para atender as questões encontradas em concursos públicos. Já conhecemos o conceito de dado, ou seja, uma informação
Leia mais