Visão geral do SQL Server

Tamanho: px
Começar a partir da página:

Download "Visão geral do SQL Server"

Transcrição

1 Visão geral do SQL Server

2 Visão geral O que é o SQL Server? Integração do SQL Server Bases de dados do SQL Server Segurança do SQL Server Trabalhando com o SQL Server

3 O que é o SQL Server? Introdução ao SQL Server Componentes cliente-servidor Processo de comunicação cliente-servidor Serviços do SQL Server

4 Introdução ao SQL Server Cliente SQL Server Resultados Consulta OLTP OLAP Aplicação cliente Sistema de gestão de bases de dados relacionais

5 Componentes cliente-servidor Aplicação cliente SQL Server API de bases de dados (OLE DB, ODBC, DB-Library) Net-Libraries do servidor Open Data Services Cliente Net-Library do cliente Mecanismo relacional Servidor Mecanismo de armazenamento Processador Memória Base de dados local

6 Processo de comunicação cliente-servidor Cliente 1 2 Aplicação cliente Consulta Conjunto de resultados API de base de dados (OLE DB, ODBC, DB-Library) Net-Library do cliente 3 SQL Server Net-Libraries do servidor 5 Consulta ODS Conjunto de resultados Mecanismo relacional Mecanismo de armazenamento 4 Servidor Processador Memória Base de dados local

7 Serviços do SQL Server Servidor Serviço MSSQLServer Serviço SQLServerAgent Microsoft Distributed Transaction Coordinator Microsoft Search Gestão de dados Processamento de transacções e pesquisas Integridade dos dados Trabalhos Alertas Operadores Gestão de transacções distribuídas Catálogos de texto Índices de texto

8 Integração do SQL Server Integrando o SQL Server com sistemas operativos Integrando o SQL Server com o Windows 2000 Integrando o SQL Server com outras aplicações de servidor da Microsoft

9 Integrando o SQL Server com sistemas operativos Windows 2000 Windows NT Windows Me, 98 e 95 Outro fabricante Navegadores Internet Cliente Servidor Windows 2000 Windows NT Windows Me Windows 98 Windows CE

10 Integrando o SQL Server com o Windows 2000 Active Directory Segurança Suporte a vários processadores Microsoft Event Viewer Component Services do Windows 2000 System Monitor do Windows 2000 Microsoft Internet Information Services Windows Clustering

11 Integrando o SQL Server com outras aplicações de servidor da Microsoft Internet Microsoft Windows 2000 Server com soluções de aumento de desempenho (SA) para o Internet Storefront Microsoft Systems Management Server SQL Server Host IBM Microsoft Exchange Server Microsoft Host Integration Server 2000 Dados e aplicações

12 Bases de dados do SQL Server Tipos de bases de dados Objectos de bases de dados Fazendo referência aos objectos do SQL Server Tabelas do sistema Recuperação de metadados

13 Tipos de bases de dados Bases de dados de sistema master model tempdb msdb distribution pubs Northwind User1 Bases de dados de utilizador

14 Objectos de base de dados PK Índice agrupado Anderson Anderson Barr... FK Procedimento armazenado UpdatePhone Trigger EmpNum LastName FirstName CtryCode Extension integer longstring varchar(20) char(2) char(6) LastMod longstring Labrie Angela FR x19891 \HR\KarlD Labrie Eva FR x19433 \HR\KarlD Martin Jose SP x21467 \HR\AmyL EmployeePhoneView SELECT lastname, firstname, extension FROM employee Check x#####

15 Fazendo referência aos objectos do SQL Server Nomes totalmente qualificados servidor.base_de_dados.proprietário.objeto Nomes especificados parcialmente O servidor padrão é a ocorrência actual no servidor local A base de dados padrão é a base de dados actual O proprietário padrão é o nome do utilizador contido na base de dados CREATE TABLE Northwind.dbo.OrderHistory...

16 Tabelas do sistema As tabelas do sistema armazenam informações (metadados) sobre o sistema e objectos de base de dados O catálogo da base de dados armazena metadados sobre uma base de dados específica O catálogo do sistema armazena metadados sobre o sistema inteiro e todos as outras bases de dados

17 Recuperação de metadados Procedimentos armazenados do sistema EXEC sp_help Employees Funções do sistema e dos metadados SELECT USER_NAME(10) Views do esquema de informações SELECT * FROM INFORMATION_SCHEMA.TABLES

18 Segurança do SQL Server Autenticação de login Contas de utilizador e cargos do base de dados Tipos de cargos Validação de permissões

19 Autenticação de login AUTENTICAÇÃO Utilizador ou grupo do Windows 2000 Windows 2000 OU O SQL Server verifica a conexão confiável SQL Server Conta de login do SQL Server O SQL Server verifica o nome e a senha

20 Contas de utilizador e cargos da base de dados Utilizador ou grupo do Windows 2000 Windows 2000 O SQL Server verifica a conexão confiável O SQL Server atribui logins a contas de utilizadores e cargos Utilizador da base de dados OU SQL Server Cargo de base de dados Conta de login do SQL Server O SQL Server verifica o nome e a senha

21 Tipos de cargos Cargos fixos de servidor Grupos de privilégios administrativos no nível do servidor Cargos fixos de base de dados Grupos de privilégios administrativos no nível da base de dados Cargos de base de dados definidos pelo utilizador Representam o trabalho executado por um grupo de funcionários de sua organização

22 Validação de permissões Permissões OK; o comando é executado O utilizador da base de dados executa o comando SELECT * FROM Members O SQL Server verifica as permissões Permissões não OK; retorno de Erro

23 Trabalhando com o SQL Server Administrando uma base de dados do SQL Server Implementando uma base de dados do SQL Server Seleccionando uma arquitectura de aplicação para o SQL Server Criando aplicações com APIs de base de dados

24 Administrando uma base de dados do SQL Server Tarefas administrativas comuns SQL Server Enterprise Manager Assistentes e ferramentas de administração do SQL Server Ferramentas de gestão do prompt de comando do SQL Server Help e Books Online do SQL Server

25 Implementando uma base de dados do SQL Server Criando a base de dados Criando a base de dados e seus objectos Testando e ajustando a aplicação e a base de dados Planeando a implementação

26 Seleccionando uma arquitectura de aplicação para o SQL Server Servidor Inteligente (2 camadas) Cliente Inteligente (2 camadas) N camadas Internet Apresentação Cliente do navegador Apresentação Apresentação Apresentação Negócios Negócios Negócios Negócios Dados Dados Dados Dados

27 Criando aplicações com APIs de base de dados Interfaces de objectos de dados ADO Application Programming Interfaces OLE DB Outras fontes de dados Bases de dados relacionais

28 Laboratório A: Visão geral do SQL Server

29 Revisão O que é o SQL Server? Integração do SQL Server Bases de dados do SQL Server Segurança do SQL Server Trabalhando com o SQL Server

30 Visão geral da programação do SQL Server

31 Visão geral Criando a arquitectura de aplicações empresariais Ferramentas de programação do SQL Server Linguagem de programação Transact-SQL Elementos do Transact-SQL Outros elementos de linguagem Maneiras de executar as instruções Transact-SQL

32 Criando a arquitetura de aplicativos empresariais Identificando camadas lógicas Criando camadas físicas Acedendo a dados

33 Identificando camadas lógicas Camada de apresentação de dados Aplicações personalizadas do Windows Navegadores da Web Camada lógica de aplicação Componentes personalizados Aplicações e serviços integrados Regras comerciais Regras de dados Camada de serviços de dados Lógica de acesso a dados Armazenamento de dados

34 Criando camadas físicas Modelo de duas camadas Apresentação de dados Lógica de aplicativo Serviços de dados Modelo de várias camadas IIS Componentes Apresentação de dados Lógica de aplicação Serviços de dados

35 Acedendo a dados Aplicações e componentes Access Excel Cliente personalizado Navegador IIS Consumidores de dados Fornecedor de dados ActiveX Data Objects Fornecedores de dados OLE DB (serviços) Cursores Processadores de consulta Serviços comerciais Fornecedores de dados OLE DB (dados) ODBC SQL Server Jet Active Directory Exchange Excel Outros fornecedores OLE DB

36 Ferramentas de programação do SQL Server SQL Query Analyzer Efectua a sintaxe de codificação por cores automaticamente Várias janelas de consulta Visualizações personalizáveis de conjuntos de resultados Planos gráficos de execução Executa partes de scripts Utilitário osql Utilitário de linha de comando

37 Linguagem de programação Transact-SQL Implementação do padrão ISO ANSI-SQL no SQL Server Pode ser executada em qualquer produto compatível com nível de entrada Contém funcionalidade exclusiva adicional

38 Elementos do Transact-SQL Instruções de Data Control Language Instruções de Data Definition Language Instruções de Data Manipulation Language Nomes de objectos do SQL Server Orientações de nomeação

39 Instruções de Data Control Language Definem ou alteram permissões GRANT DENY REVOKE Por omissão, somente os participantes do cargo sysadmin, dbcreator, db_owner ou db_securityadmin podem executar

40 Instruções de Data Definition Language Definem os objectos da base de dados CREATE tipo_de_objeto nome_do_objeto ALTER tipo_de_objeto nome_do_objeto DROP tipo_de_objeto nome_do_objeto

41 Instruções de Data Manipulation Language Operam com os dados contidos na base de dados SELECT INSERT UPDATE DELETE

42 Nomes de objectos do SQL Server Identificadores padrão O primeiro carácter deve ser um carácter alfabético Outros caracteres podem incluir letras, números ou símbolos Os nomes de identificadores que começam com um símbolo têm utilizações especiais Identificadores delimitados Use quando os nomes contiverem espaços incorporados Use quando palavras reservadas forem partes de nomes Delimite-os por parêntesis rectos ([ ]) ou aspas duplas (" ")

43 Orientações de nomeação Quando possível, usar nomes significativos Manter nomes curtos Usar convenções de nomeação simples e claras Escolher um identificador que diferencie tipos de objecto Views Procedimentos armazenados Manter a exclusividade dos nomes de objectos e utilizadores

44 Outros elementos de linguagem Variáveis locais Operadores Funções Exemplos de funções Elementos de linguagem de controle de fluxo Comentários

45 Variáveis locais Definidas pelo utilizador com a instrução DECLARE Recebem valores através de uma instrução SET ou SELECT USE Northwind varchar(11) = 'Dodsworth' = FirstName FROM Northwind..Employees WHERE LastName + ' ' GO

46 Operadores Tipos de operadores Aritmético Comparação Concatenação de sequências de caracteres Lógico Níveis de precedência dos operadores

47 Funções Funções agregadas SELECT AVG (UnitPrice) FROM Products Funções escalares SELECT DB_NAME() AS 'database' Funções de conjunto de registros SELECT * FROM OPENQUERY (OracleSvr, 'SELECT ENAME, EMPNO FROM SCOTT.EMP')

48 Exemplos de funções SELECT 'ANSI:' AS Region, CONVERT(varchar(30), GETDATE(), 102) AS Style UNION SELECT 'European:', CONVERT(varchar(30), GETDATE(), 113) UNION SELECT 'Japanese:', CONVERT(varchar(30), GETDATE(), 111) Resultado Region ANSI: European: Japanese: Style Mar :20:00: /03/22

49 Elementos de linguagem de controle de fluxo Nível de instrução Blocos BEGIN END Blocos IF ELSE Construções com WHILE Nível de registro IF USER_NAME() <> 'dbo' BEGIN RAISERROR('Must be sysadmin to Perform Operation', 10, 1) RETURN END ELSE DBCC CHECKDB(Northwind) Expressão CASE

50 Comentários Comentários em linha SELECT ProductName,(UnitsInStock + UnitsOnOrder) AS Max -- Calcula o inventário, SupplierID FROM Products Comentários em bloco /* ** Este código recupera todos os registros da tabela products ** e exibe o preço unitário, o preço unitário com aumento ** de 10% e o nome do produto. */ SELECT UnitPrice, (UnitPrice * 1.1), ProductName FROM Products

51 Maneiras de executar as instruções Transact-SQL Construindo instruções de forma dinâmica Usando lotes (batches) Usando scripts Usando transacções Usando a Extensible Markup Language

52 Construindo instruções de forma dinâmica Use EXECUTE com literais e variáveis de sequências de caracteres Use quando for necessário atribuir o valor da variável em tempo de execução As variáveis e tabelas temporárias permanecerão somente durante a execução varchar(30) = 'Northwind' = 'Products' EXECUTE ('USE' + 'SELECT * FROM'

53 Usando lotes Uma ou mais instruções Transact-SQL submetidas em conjunto Definir um lote com a instrução GO Como o SQL Server processa lotes Instruções que você não pode combinar em um lote CREATE PROCEDURE CREATE VIEW CREATE TRIGGER CREATE RULE CREATE DEFAULT

54 Usando scripts Contêm instruções gravadas Podem ser escritos em qualquer editor de texto Grave usando a extensão de nome de arquivo.sql São executados no SQL Query Analyzer ou no utilitário osql Use para a recriação de objectos de bases de dados ou para executar instruções várias vezes

55 Usando transações Processadas como um lote Integridade de dados garantida Alterações na base de dados são aplicadas juntas ou desfeitas BEGIN TRANSACTION UPDATE savings SET balance = (amount - 100) WHERE custid = <Rollback transaction if error> UPDATE checking SET balance = (amount + 100) WHERE custid = <Rollback transaction if error> COMMIT TRANSACTION

56 Usando a Extensible Markup Language Permitindo que um navegador cliente formate dados Especificando a opção FOR XML AUTO Especificando a opção FOR XML RAW Identificando limitações na utilização da cláusula FOR XML

57 Práticas recomendadas Mantenha a lógica comercial no servidor como procedimentos armazenados Use a sintaxe do ANSI SQL Escolha uma convenção de nomeação adequada Salve as instruções como scripts e faça um comentário completo delas Formate as instruções Transact-SQL de modo que os outros utilizadores as consigam ler

58 Laboratório A: Visão geral do Transact-SQL

59 Revisão Criando a arquitectura de aplicações empresariais Ferramentas de programação do SQL Server Linguagem de programação Transact-SQL Elementos do Transact-SQL Outros elementos de linguagem Maneiras de executar as instruções Transact-SQL

60 Introdução ao Transact-SQL

61 Visão geral Linguagem de programação Transact-SQL Tipos de instruções Transact-SQL Elementos de sintaxe do Transact-SQL

62 Linguagem de programação Transact-SQL Implementa o padrão SQL-92 em nível de acesso publicado pelo ANSI e pela ISO Pode ser executada em qualquer produto compatível com nível de acesso Contém funcionalidade exclusiva adicional

63 Tipos de instruções Transact-SQL Instruções de DDL Instruções de DCL Instruções de DML

64 Instruções de DDL Definem os objectos da base de dados CREATE nome_do_objeto ALTER nome_do_objeto DROP nome_do_objeto Devem ter as permissões apropriadas USE northwind CREATE TABLE customer (cust_id int, company varchar(40), contact varchar(30), phone char(12) ) GO

65 Instruções de DCL Definem ou alteram permissões GRANT DENY REVOKE Devem ter as permissões apropriadas USE northwind GRANT SELECT ON products TO public GO

66 Instruções de DML Alteram dados ou recuperam informações SELECT INSERT UPDATE DELETE Devem ter as permissões apropriadas SELECT categoryid, productname, productid, unitprice USE northwind SELECT categoryid, productname, productid, unitprice FROM products GO

67 Elementos de sintaxe do Transact-SQL Directivas em lotes Comentários Identificadores Tipos de dados Variáveis Funções do sistema Operadores Expressões Elementos de linguagem de controle de fluxo Palavras-chave reservadas

68 Directivas em lotes GO Define os lotes de instruções Transact-SQL para ferramentas e utilitários Não é uma instrução Transact-SQL real EXEC Executa uma função definida pelo utilizador, um procedimento do sistema, um procedimento armazenado definido pelo utilizador ou um procedimento armazenado estendido Controla a execução de uma sequência de caracteres num lote do Transact-SQL

69 Comentários Comentários em linha Exemplo 1 USE northwind SELECT productname, (unitsinstock - unitsonorder) -- Calcula o inventário, supplierid FROM products GO Comentários em bloco Exemplo 3 /* Este código recupera todas as linhas da tabela products e exibe o preço unitário, o preço unitário aumentado em 10% e o nome do produto. */ USE northwind SELECT unitprice, (unitprice * 1.1), productname FROM products GO

70 Identificadores Identificadores padrão O primeiro carácter deve ser um carácter alfabético Outros caracteres podem incluir letras, numerais ou símbolos Os nomes de identificadores que começam com um símbolo têm utilizações especiais Identificadores delimitados Use quando os nomes contiverem espaços incorporados Use quando palavras reservadas forem partes de nomes Delimite-os por parêntesis rectos ([ ]) ou aspas duplas (" ")

71 Directrizes de nomeação de identificadores Mantenha os nomes curtos Quando possível, empregue nomes significativos Use convenções de nomeação simples e fáceis Use um identificador que diferencie tipos de objecto Views Procedimentos armazenados Mantenha a exclusividade dos nomes de objectos e utilizadores Tabela Sales e cargo sales

72 Tipos de dados Numbers Dates Characters Binary Unique Identifiers SQL Variants Image e Text Tables Cursors Tipos de dados definidos pelo utilizador

73 Variáveis Definidas pelo utilizador com a instrução DECLARE precedida de um Recebem valores através de uma instrução SET ou SELECT precedida de um Têm âmbito local USE northwind varchar(11),@vlname char(20) = 'Dodsworth' = employeeid FROM employees WHERE LastName AS EmployeeID GO

74 Funções do sistema Funções agregadas USE northwind SELECT AVG (unitprice) AS AvgPrice FROM products GO Funções escalares USE northwind SELECT DB_NAME() AS 'database GO Funções de definição de registros SELECT * FROM OPENQUERY (OracleSvr, 'SELECT name, id FROM owner.titles')

75 Exemplos de funções do sistema Exemplo 1 SELECT 'ANSI:', CONVERT(varchar(30), GETDATE(), 102) AS Style UNION SELECT 'Japanese:', CONVERT(varchar(30), GETDATE(), 111) UNION SELECT 'European:', CONVERT(varchar(30), GETDATE(), 113) GO Resultado ANSI: Japanese: European: Style /20/98 20 Nov :44:12:857

76 Operadores Tipos de operadores Aritmético Comparação Concatenação de sequências de caracteres Lógico Níveis de precedência dos operadores

77 Expressões Combinação de símbolos e operadores Avaliação como um único valor escalar Resultado de tipo de dados dependentes dos elementos na expressão USE northwind SELECT OrderID, ProductID,(UnitPrice * Quantity) as ExtendedAmount FROM [Order Details] WHERE (UnitPrice * Quantity) > GO

78 Elementos de linguagem de controle de fluxo Exemplo 2 Nível de instrução Blocos BEGIN END Blocos IF ELSE Construções com WHILE Nível de registro Expressão CASE tinyint = 5 IF (@n BETWEEN 4 and 6) BEGIN WHILE (@n > 0) BEGIN AS 'Number',CASE WHEN (@n % 2) = 1 THEN 'EVEN' ELSE 'ODD' END AS 'Type' - 1 END END ELSE PRINT 'SEM ANÁLISE' GO

79 Palavras-chave reservadas Nomes de identificadores que têm significado especial Palavras-chave do Transact-SQL Palavras-chave do ANSI SQL-92 Palavras-chave reservadas do ODBC Não use palavras-chave reservadas para nomes de identificadores

80 Laboratório A: Usando o Books Online do SQL Server

81 Revisão Linguagem de programação Transact-SQL Tipos de instruções Transact-SQL Elementos de sintaxe do Transact-SQL

82 Obtenção de dados

83 Visão geral Obtendo dados usando a instrução SELECT Filtrando dados Formatando conjuntos de resultados Como as consultas são processadas Como as consultas são colocadas em cache automaticamente Considerações sobre o desempenho

84 Visão geral Obtendo dados usando a instrução SELECT Filtrando dados Formatando conjuntos de resultados Considerações sobre o desempenho

85 Obtendo dados usando a instrução SELECT Usando a instrução SELECT Especificando colunas Usando a cláusula WHERE para especificar registos

86 Usando a instrução SELECT A lista de selecção especifica as colunas A cláusula WHERE especifica a condição que restringe a consulta A cláusula FROM especifica a tabela Sintaxe parcial SELECT [ALL DISTINCT] <lista_de_selecção> FROM {<origem_da_tabela>} [, n] WHERE <condição_de_pesquisa>

87 Especificando colunas USE northwind SELECT employeeid, lastname, firstname, title FROM employees GO employeeid lastname firstname title 1 Davolio Nancy Sales Representative 2 Fuller Andrew Vice President, Sales 3 Leverling Janet Sales Representative 4 Peacock Margaret Sales Representative 5 Buchanan Steven Sales Manager 6 Suyama Michael Sales Representative 7 King Robert Sales Representative 8 Callahan Laura Inside Sales Coordinator 9 Dodsworth Anne Sales Representative

88 Usando a cláusula WHERE para especificar registos USE northwind SELECT employeeid, lastname, firstname, title FROM employees WHERE employeeid = 5 GO employeeid lastname firstname title 5 Buchanan Steven Sales Manager

89 Filtrando dados Usando operadores de comparação Usando comparações de sequências Usando operadores lógicos Recuperando um intervalo de valores Usando uma lista de valores como critérios de pesquisa Recuperando valores desconhecidos

90 Usando operadores de comparação USE northwind SELECT lastname, city FROM employees WHERE country = 'USA GO Exemplo 1 lastname Davolio Fuller Leverling Peacock Callahan city Seattle Tacoma Kirkland Redmond Seattle

91 Usando comparações de sequências USE northwind SELECT companyname FROM customers WHERE companyname LIKE '%Restaurant% GO companyname GROSELLA-Restaurante Lonesome Pine Restaurant Tortuga Restaurante

92 Usando operadores lógicos Exemplo 1 USE northwind SELECT productid, productname, supplierid, unitprice FROM products WHERE (productname LIKE 'T%' OR productid = 46) AND (unitprice > 16.00) GO productid productname supplierid unitprice 14 Tofu Thüringer Rostbratwurst Tarte au sucre

93 Recuperando um intervalo de valores USE northwind SELECT productname, unitprice FROM products WHERE unitprice BETWEEN 10 AND 20 GO Exemplo 1 productname unitprice Chai 18 Chang 19 Aniseed Syrup 10 Genen Shouyu 15.5 Pavlova Sir Rodney s Scones 10

94 Usando uma lista de valores como critérios de pesquisa USE northwind SELECT companyname, country FROM suppliers WHERE country IN ('Japan', 'Italy') GO Exemplo 1 companyname Tokyo Traders Mayumi s Formaggi Fortini s.r.l. Pasta Buttini s.r.l. country Japan Japan Italy Italy

95 Recuperando valores desconhecidos USE northwind SELECT companyname, fax FROM suppliers WHERE fax IS NULL GO companyname Exotic Liquids New Orleans Cajun Delights Tokyo Traders Cooperativa de Quesos Las Cabras fax NULL NULL NULL NULL

96 Formatando conjuntos de resultados Classificando dados Ocultando registos duplicados Alterando nomes de colunas Usando literais

97 Classificando dados Exemplo 1 USE northwind SELECT productid, productname, categoryid, unitprice FROM products ORDER BY categoryid, unitprice DESC GO productid productname categoryid unitprice 38 Cote de Blaye Ipoh Coffee Chang Vegie-spread Northwoods Cranberry Sauce Sirop d'érable

98 Ocultando registos duplicados USE northwind SELECT DISTINCT country FROM suppliers ORDER BY country GO Exemplo 1 country Australia Brazil Canada Denmark Finland France Germany Italy Japan Netherlands Norway Singapore Spain Sweden UK USA

99 Alterando nomes de colunas USE northwind SELECT firstname AS First, lastname AS Last,employeeid AS 'Employee ID:' FROM employees GO First Last Employee ID: Nancy Davolio 1 Andrew Fuller 2 Janet Leverling 3 Margaret Peacock 4 Steven Buchanan 5 Michael Suyama 6 Robert King 7 Laura Callahan 8 Anne Dodsworth 9

100 Usando literais USE northwind SELECT firstname, lastname, 'Identification number:', employeeid FROM employees GO firstname lastname employeeid Nancy Davolio Identification Number: 1 Andrew Fuller Identification Number: 2 Janet Leverling Identification Number: 3 Margaret Peacock Identification Number: 4 Steven Buchanan Identification Number: 5 Michael Suyama Identification Number: 6 Robert King Identification Number: 7 Laura Callahan Identification Number: 8 Anne Dodsworth Identification Number: 9

101 Como as consultas são processadas Consultas sem cache (ad hoc) Analisar Resolver Otimizar Compilar Executar Consultas em cache Primeira execução Analisar Resolver Otimizar Compilar Executar Execução posterior Cache de procedimentos Executar

102 Como as consultas são colocadas em cache automaticamente Lotes ad hoc USE northwind SELECT * FROM products WHERE unitprice = $12.5 SELECT * FROM products WHERE unitprice = 12.5 SELECT * FROM products WHERE unitprice = $12.5 GO Atribuição automática de parâmetros USE library SELECT * FROM member WHERE member_no = 7890 SELECT * FROM member WHERE member_no = 1234 SELECT * FROM member WHERE member_no = 7890 GO

103 Considerações sobre o desempenho Condições de pesquisa NOT atrasam a recuperação de dados Condições de pesquisa LIKE atrasam a recuperação de dados Correspondências exactas ou intervalos aceleram a recuperação de dados A cláusula ORDER BY atrasa a recuperação de dados

104 Práticas recomendadas Use a cláusula DISTINCT para ocultar registos duplicados em conjuntos de resultados Facilite a leitura dos conjuntos de resultados, alterando os nomes de coluna ou usando literais Em listas de colunas de várias linhas, coloque vírgulas antes dos nomes de colunas, excluindo a primeira coluna

105 Laboratório A: Recuperando dados e manipulando conjuntos de resultados

106 Revisão Recuperando dados usando a instrução SELECT Filtrando dados Formatando conjuntos de resultados Como as consultas são processadas Como as consultas são colocadas em cache automaticamente Considerações sobre o desempenho

107 Agregação de dados

108 Visão geral Listando os primeiros n valores com TOP n Usando funções agregadas Noções básicas sobre a cláusula GROUP BY Gerando valores agregados em conjuntos de resultados Usando as cláusulas COMPUTE e COMPUTE BY

109 Listando os primeiros n valores com TOP n Lista apenas os n primeiros registros de um conjunto de resultados Especifica o intervalo de valores na cláusula ORDER BY Retorna correspondências se WITH TIES for usada Exemplo 1 USE northwind SELECT TOP 5 orderid, productid, quantity FROM [order details] ORDER BY quantity DESC GO Exemplo 2 USE northwind SELECT TOP 5 WITH TIES orderid, productid, quantity FROM [order details] ORDER BY quantity DESC GO

110 Usando funções agregadas Funções agregadas Descrição AVG COUNT COUNT (*) MAX MIN SUM STDEV STDEVP VAR VARP Média de valores em uma expressão numérica Número de valores em uma expressão Número de registros selecionados Maior valor da expressão Menor valor da expressão Valores totais em uma expressão numérica Desvio padrão de todos os valores Desvio padrão da população Variância estatística de todos os valores Variância estatística de todos os valores da população

111 Usando funções agregadas com valores nulos A maioria das funções agregadas ignora valores nulos A função COUNT (*) conta todos os registos com valores nulos USE northwind SELECT COUNT (*) FROM employees GO USE northwind SELECT COUNT(reportsto) FROM employees GO Exemplo 1 Exemplo 2

112 Noções básicas sobre a cláusula GROUP BY Usando a cláusula GROUP BY Usando a cláusula GROUP BY com a cláusula HAVING

113 Usando a cláusula GROUP BY USE northwind SELECT productid, orderid,quantity FROM orderhist GO productid orderid quantity USE northwind SELECT productid,sum(quantity) AS total_quantity FROM orderhist GROUP BY productid GO Apenas os registos que satisfazem às condições da cláusula WHERE serão agrupados productid total_quantity productid total_quantity 2 35 USE northwind SELECT productid,sum(quantity) AS total_quantity FROM orderhist WHERE productid = 2 GROUP BY productid GO

114 Usando a cláusula GROUP BY com a cláusula HAVING USE northwind SELECT productid, orderid,quantity FROM orderhist GO productid orderid quantity USE northwind SELECT productid, SUM(quantity) AS total_quantity FROM orderhist GROUP BY productid HAVING SUM(quantity)>=30 GO productid total_quantity

115 Gerando valores agregados em conjuntos de resultados Usando a cláusula GROUP BY com o operador ROLLUP Usando a cláusula GROUP BY com o operador CUBE Usando a função GROUPING

116 Usando a cláusula GROUP BY com o operador ROLLUP USE northwind SELECT productid, orderid, SUM(quantity) AS total_quantity FROM orderhist GROUP BY productid, orderid WITH ROLLUP ORDER BY productid, orderid GO productid orderid total_quantity NULL NULL 95 1 NULL NULL NULL Descrição Total geral Resume apenas os registros de productid 1 Valores de detalhe de productid 1, orderid 1 Valores de detalhe de productid 1, orderid 2 Resume apenas os registros de productid 2 Valores de detalhe de productid 2, orderid 1 Resume apenas os registros de productid 3 Valores de detalhe de productid 3, orderid 1 Valores de detalhe de productid 3, orderid 2

117 Usando a cláusula GROUP BY com o operador CUBE USE northwind SELECT productid, orderid, SUM(quantity) AS total_quantity FROM orderhist GROUP BY productid, orderid WITH CUBE ORDER BY productid, orderid GO O operador CUBE produz dois valores de resumo a mais que o operador ROLLUP productid orderid total_quantity NULL NULL 95 NULL 1 30 NULL NULL NULL NULL Descrição Total geral Resume todos os registros de orderid 1 Resume todos os registros de orderid 2 Resume apenas os registros de productid 1 Valores de detalhe de productid 1, orderid 1 Valores de detalhe de productid 1, orderid 2 Resume apenas os registros de productid 2 Valores de detalhe de productid 2, orderid 1 Valores de detalhe de productid 2, orderid 2 Resume apenas os registros de productid 3 Valores de detalhe de productid 3, orderid 1 Valores de detalhe de productid 3, orderid 2

118 Usando a função GROUPING USE northwind SELECT productid, GROUPING (productid),orderid, GROUPING (orderid),sum(quantity) AS total_quantity FROM orderhist GROUP BY productid, orderid WITH CUBE ORDER BY productid, orderid GO 1 representa os valores de resumo na coluna anterior 0 representa os valores de detalhe na na coluna anterior productid NULL NULL NULL orderid NULL 1 2 NULL 1 2 NULL 1 2 NULL total_quantity

Revisão / Exercícios. Prof. Márcio Bueno. {bd2tarde,bd2noited}@marciobueno.com

Revisão / Exercícios. Prof. Márcio Bueno. {bd2tarde,bd2noited}@marciobueno.com Revisão / Exercícios Prof. Márcio Bueno {bd2tarde,bd2noited}@marciobueno.com Especificando Campos Apelidos de campo SELECT DEI" + "-UNICAP" as Centro, Universidade = UNICAP" Expressões como campos Podem

Leia mais

Comandos de Manipulação

Comandos 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 mais

ORACLE 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 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 mais

Structured Query Language (SQL)

Structured 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 mais

Introdução à Banco de Dados. Nathalia Sautchuk Patrício

Introduçã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 mais

Banco de Dados Oracle 10g: Introdução à Linguagem SQL

Banco de Dados Oracle 10g: Introdução à Linguagem SQL Oracle University Entre em contato: 0800 891 6502 Banco de Dados Oracle 10g: Introdução à Linguagem SQL Duração: 5 Dias Objetivos do Curso Esta classe se aplica aos usuários do Banco de Dados Oracle8i,

Leia mais

Tarefa Orientada 19 Triggers

Tarefa 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 mais

Programação SQL. Introdução

Programaçã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 mais

Linguagem SQL (Parte I)

Linguagem 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 mais

EXEMPLOS DE COMANDOS NO SQL SERVER

EXEMPLOS 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 mais

Banco de Dados. Prof. Antonio

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 mais

ADMINISTRAÇÃO DE BANCO DE DADOS

ADMINISTRAÇÃO DE BANCO DE DADOS ADMINISTRAÇÃO DE BANCO DE DADOS ARTEFATO 02 AT02 Diversos I 1 Indice ESQUEMAS NO BANCO DE DADOS... 3 CRIANDO SCHEMA... 3 CRIANDO TABELA EM DETERMINADO ESQUEMA... 4 NOÇÕES BÁSICAS SOBRE CRIAÇÃO E MODIFICAÇÃO

Leia mais

Linguagem SQL Parte I

Linguagem 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 mais

2008.1. A linguagem SQL

2008.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 mais

SQL Structured Query Language

SQL 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 mais

Tarefa Orientada 15 Manipulação de dados

Tarefa 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 mais

Faculdade Pitágoras 16/08/2011. Curso Superior de Tecnologia: Banco de Dados Sistemas para Internet

Faculdade 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 mais

SQL TGD/JMB 1. Projecto de Bases de Dados. Linguagem SQL

SQL 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 mais

Faculdade 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 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 mais

Tarefa Orientada 16 Vistas

Tarefa 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 mais

Linguagem de Consulta Estruturada SQL- DML

Linguagem 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 mais

Sistemas de Bases de Dados Relacionais Introdução ao SQL. Interrogações diversas sobre a Base de Dados Northwind

Sistemas de Bases de Dados Relacionais Introdução ao SQL. Interrogações diversas sobre a Base de Dados Northwind SQL (01) Sistemas de Bases de Dados Relacionais Introdução ao SQL Interrogações diversas sobre a Base de Dados Northwind /* Introdução ao SQL - Parte I =========================== Folha de Exercícios Resolução

Leia mais

Projeto de Banco de Dados: Empresa X

Projeto de Banco de Dados: Empresa X Projeto de Banco de Dados: Empresa X Modelo de negócio: Empresa X Competências: Analisar e aplicar o resultado da modelagem de dados; Habilidades: Implementar as estruturas modeladas usando banco de dados;

Leia mais

Banco de Dados. Marcio de Carvalho Victorino www.dominandoti.eng.br. Exercícios SQL

Banco 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 mais

Tarefa Orientada 14 Subconsultas

Tarefa 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 mais

Introdução à Engenharia da Computação. Banco de Dados Professor Machado

Introduçã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 mais

SQL (Structured Query Language)

SQL (Structured Query Language) (Structured Query Language) I DDL (Definição de Esquemas Relacionais)... 2 I.2 Domínios... 2 I.3 Criação de Tabelas... 2 I.4 Triggers... 4 II DML Linguagem para manipulação de dados... 5 II.2 Comando SELECT...

Leia mais

O que são Bancos de Dados?

O 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 mais

Bá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) 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 mais

Bases de Dados 2007/2008. Aula 1. Referências

Bases de Dados 2007/2008. Aula 1. Referências Bases de Dados 2007/2008 Aula 1 Sumário 1. SQL Server 2000: configuração do acesso ao servidor. 1.1. SQL Server Service Manager. 1.2. SQL Server Enterprise Manager. 1.3. SQL Query Analyzer. 2. A base de

Leia mais

DO BÁSICO AO AVANÇADO PARA MANIPULAÇÃO E OTIMIZAÇÃO DE DADOS. Fábio Roberto Octaviano

DO BÁSICO AO AVANÇADO PARA MANIPULAÇÃO E OTIMIZAÇÃO DE DADOS. Fábio Roberto Octaviano DO BÁSICO AO AVANÇADO PARA MANIPULAÇÃO E OTIMIZAÇÃO DE DADOS Fábio Roberto Octaviano Conceitos da arquitetura Oracle e da Linguagem SQL Recuperar dados por meio de SELECT Criar relatórios de dados classificados

Leia mais

SQL 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 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 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çõ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 mais

Noções de. Microsoft SQL Server. Microsoft SQL Server

Noções de. Microsoft SQL Server. Microsoft SQL Server Noções de 1 Considerações Iniciais Basicamente existem dois tipos de usuários do SQL Server: Implementadores Administradores 2 1 Implementadores Utilizam o SQL Server para criar e alterar base de dados

Leia mais

SQL 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 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 mais

COMPETÊNCIAS ESPECÍFICAS Compreender e utilizar a linguagem SQL, na construção e manutenção de uma base de dados.

COMPETÊNCIAS ESPECÍFICAS Compreender e utilizar a linguagem SQL, na construção e manutenção de uma base de dados. PLANIFICAÇÃO DA DISCIPLINA DE SISTEMAS DE INFORMAÇÃO 12.ºH CURSO PROFISSIONAL DE TÉCNICO MULTIMÉDIA ANO LECTIVO 2013/2014 6. LINGUAGENS DE PROGRAMAÇÃO IV Pré-requisitos: - Planificar e estruturar bases

Leia mais

SQL. SQL (Structured Query Language) Comando CREATE TABLE. SQL é uma linguagem de consulta que possibilita:

SQL. 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 mais

Bases de Dados 2007/2008. Aula 9

Bases de Dados 2007/2008. Aula 9 Bases de Dados 2007/2008 Aula 9 1. T-SQL TRY CATCH 2. TRATAMENTO ERROS RAISERROR 3. TRIGGERS 4. EXERCÍCIOS Sumário Referências http://msdn2.microsoft.com/en-us/library/ms189826.aspx (linguagem t-sql) http://www.di.ubi.pt/~pprata/bd/bd0405-proc.sql

Leia mais

APOSTILA BANCO DE DADOS INTRODUÇÃO A LINGUAGEM SQL

APOSTILA 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 mais

Banco de Dados I. Aula 12 - Prof. Bruno Moreno 04/10/2011

Banco 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 mais

UNIDADE 1 - SQL... 3 1.1 LINGUAGEM DE PROGRAMAÇÃO TRANSACT-SQL... 3 1.2 ELEMENTOS DE SINTAXE DO TRANSACT-SQL... 3 1.3 DIRETIVAS EM LOTES... 3 1.

UNIDADE 1 - SQL... 3 1.1 LINGUAGEM DE PROGRAMAÇÃO TRANSACT-SQL... 3 1.2 ELEMENTOS DE SINTAXE DO TRANSACT-SQL... 3 1.3 DIRETIVAS EM LOTES... 3 1. BANCO DE DADOS II 1 UNIDADE 1 - SQL... 3 1.1 LINGUAGEM DE PROGRAMAÇÃO TRANSACT-SQL... 3 1.2 ELEMENTOS DE SINTAXE DO TRANSACT-SQL... 3 1.3 DIRETIVAS EM LOTES... 3 1.4 COMENTÁRIOS... 4 1.5 IDENTIFICADORES...

Leia mais

Histórico de revisões

Histórico de revisões Apostila 3 Histórico de revisões Data Versão Descrição Autor 30/09/2011 1.0 Criação da primeira versão HEngholmJr CONTEÚDO Exclusão de registros Consultas por Dados de Resumo Group by / Having Funções

Leia mais

SQL (Structured Querie Language) Escola Secundária de Emídio Navarro 2001/2002 Estruturas, Tratamento e Organização de Dados

SQL (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 mais

Tarefa Orientada 12 Junção Externa, Auto-Junção e União

Tarefa Orientada 12 Junção Externa, Auto-Junção e União Tarefa Orientada 12 Junção Externa, Auto-Junção e União Objectivos: Junção externa (Outer JOIN) Junção externa à esquerda (LEFT Outer JOIN) Junção externa à direita (RIGHT Outer JOIN) Junção externa completa

Leia mais

Gatilhos (Triggers) Prof. Márcio Bueno {bd2tarde,bd2noited}@marciobueno.com. Elaborado por Maria Lígia B. Perkusich

Gatilhos (Triggers) Prof. Márcio Bueno {bd2tarde,bd2noited}@marciobueno.com. Elaborado por Maria Lígia B. Perkusich Gatilhos (Triggers) Prof. Márcio Bueno {bd2tarde,bd2noited}@marciobueno.com Elaborado por Maria Lígia B. Perkusich O que é um gatilho (trigger)? Um gatilho é um tipo especial de procedimento armazenado

Leia mais

Princípio dos anos 70 IBM desenvolve a linguagem Sequel para o System R. Standards ISO e ANSI SQL-86, SQL-89, SQL-92, SQL:1999, SQL:2003

Princípio dos anos 70 IBM desenvolve a linguagem Sequel para o System R. Standards ISO e ANSI SQL-86, SQL-89, SQL-92, SQL:1999, SQL:2003 Bases de Dados Introdução à linguagem SQL História Princípio dos anos 70 IBM desenvolve a linguagem Sequel para o System R Renomeada para SQL (Structured Query Language) Standards ISO e ANSI SQL-86, SQL-89,

Leia mais

2008.1 SQL. Autor: Renata Viegas

2008.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 mais

Figura 1. Figura 2. Prova Escrita de Base de Dados 5 Novembro 2005 - V2 Número do Aluno: Nome do Aluno: 1º Teste (90 Minutos)

Figura 1. Figura 2. Prova Escrita de Base de Dados 5 Novembro 2005 - V2 Número do Aluno: Nome do Aluno: 1º Teste (90 Minutos) Prova Escrita de Base de Dados 5 Novembro 2005 - V2 Número do Aluno: Nome do Aluno: 1º Teste (90 Minutos) Identifique esta prova preenchendo o seu nome e número nesta página, e o número em todas as restantes.

Leia mais

8. 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) 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 mais

BASES DE DADOS I LTSI/2. Universidade da Beira Interior, Departamento de Informática Hugo Pedro Proença, 2010/2011

BASES DE DADOS I LTSI/2. Universidade da Beira Interior, Departamento de Informática Hugo Pedro Proença, 2010/2011 BASES DE DADOS I LTSI/2 Universidade da Beira Interior, Departamento de Informática Hugo Pedro Proença, 2010/2011 A Linguagem SQL As raízes da linguagem SQL remontam a 1974, altura em que a IBM desenvolvia

Leia mais

Introdução ao SQL. O que é SQL?

Introduçã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 mais

SQL é uma linguagem de consulta que implementa as operações da álgebra relacional de forma bem amigável.

SQL é 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 mais

EXERCÍCIOS PRÁTICOS. Banco de Dados

EXERCÍ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 mais

SQL. Prof. Márcio Bueno. {bd2tarde,bd2noite}@marciobueno.com

SQL. 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 mais

Structured Query Language (SQL) Ambiente Simplificado de um SGBD

Structured 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 mais

Consistem num conjunto de apontadores para instâncias especificas de cada relação.

Consistem num conjunto de apontadores para instâncias especificas de cada relação. Mecanismo usado para mais fácil e rapidamente aceder à informação existente numa base de dados. Bases de Dados de elevadas dimensões. Consistem num conjunto de apontadores para instâncias especificas de

Leia mais

Formação em Banco de Dados. Subtítulo

Formação em Banco de Dados. Subtítulo Formação em Banco de Dados Subtítulo Sobre a APTECH A Aptech é uma instituição global, modelo em capacitação profissional, que dispõe de diversos cursos com objetivo de preparar seus alunos para carreiras

Leia mais

LINGUAGEM SQL. DML - Linguagem de Manipulação de Dados

LINGUAGEM 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 mais

Tarefa Orientada 10 Obter informação a partir de uma tabela

Tarefa Orientada 10 Obter informação a partir de uma tabela Tarefa Orientada 10 Obter informação a partir de uma tabela Objectivos: Consultar dados de uma tabela Utilizar operadores aritméticos, relacionais, lógicos, de concatenação de cadeias de caracteres, LIKE

Leia mais

Linguagem de Consulta Estruturada (SQL)

Linguagem de Consulta Estruturada (SQL) Linguagem de Consulta Estruturada (SQL) Conceitos sobre a versão ANSI da SQL, a sublinguagem de definição de dados (DDL) e a sublinguagem de manipulação de dados (DML) Prof. Flavio Augusto C. Correia 1

Leia mais

Prof. Carlos Majer Aplicações Corporativas UNICID

Prof. 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 mais

Tarefa Orientada 18 Procedimentos armazenados

Tarefa Orientada 18 Procedimentos armazenados Tarefa Orientada 18 Procedimentos armazenados Objectivos: Criar Procedimentos armazenados Chamar procedimentos armazenados Utilizar parâmetros de entrada e de saída Um procedimento armazenado representa

Leia mais

SQL. Structured Query Language

SQL. Structured Query Language SQL Structured Query Language Construções básicas Junção de Tabelas Join O uso da operação JOIN numa cláusula FROM especifica como se deseja que as tabelas sejam vinculadas. Use INNER JOIN para associar

Leia mais

Tarefa Orientada 13 Agrupamento e sumário de dados

Tarefa 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 mais

Operação de União JOIN

Operação de União JOIN Operação de União JOIN Professor Victor Sotero SGD 1 JOIN O join é uma operação de multi-tabelas Select: o nome da coluna deve ser precedido pelo nome da tabela, se mais de uma coluna na tabela especificada

Leia mais

MODELO DE DADOS VS ESQUEMA

MODELO 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 mais

SQL 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. 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 mais

SQL BÁSICO. Introdução. Prof. Suelane Garcia. Linguagem SQL (Structured Query Language)

SQL BÁSICO. Introdução. Prof. Suelane Garcia. Linguagem SQL (Structured Query Language) SQL BÁSICO Prof. Suelane Garcia Introdução 2 Linguagem SQL (Structured Query Language) Linguagem de Consulta Estruturada padrão para acesso a Banco de Dados. Usada em inúmeros Sistemas de Gerenciamento

Leia mais

AULA 2 INTERAÇÃO COM O BANCO DE DADOS

AULA 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

Oracle PL/SQL Overview

Oracle PL/SQL Overview Faculdades Network Oracle PL/SQL Overview Prof. Edinelson PL/SQL Linguagem de Programação Procedural Language / Structured Query Language Une o estilo modular de linguagens de programação à versatilidade

Leia mais

Exercícios de Lógica Exercícios de Fixação 08

Exercí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 mais

SQL. Structured Query Language. Copyright 2003 2014 Prof. Edison Andrade Martins Morais http://www.edison.eti.br prof@edison.eti.

SQL. Structured Query Language. Copyright 2003 2014 Prof. Edison Andrade Martins Morais http://www.edison.eti.br prof@edison.eti. SQL Structured Query Language Copyright 2003 2014 Prof. Edison Andrade Martins Morais http://www.edison.eti.br prof@edison.eti.br Sumário 1.CREATE TABLE... 5 1.1. Sintaxe... 5 1.2. A instrução CREATE TABLE

Leia mais

PROGRAMA. Objectivos Gerais :

PROGRAMA. Objectivos Gerais : PROGRAMA ANO LECTIVO : 2005/2006 CURSO : ENGENHARIA MULTIMÉDIA ANO: 2.º DISCIPLINA : SISTEMA DE GESTÃO DE BASE DE DADOS DOCENTE RESPONSÁVEL PELA REGÊNCIA : Licenciado Lino Oliveira Objectivos Gerais :

Leia mais

SQL - Criação de Tabelas

SQL - 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 mais

Bases de Dados 2005/2006. Aula 5

Bases de Dados 2005/2006. Aula 5 Bases de Dados 2005/2006 Aula 5 Sumário -1. (T.P.C.) Indique diferenças entre uma tabela e uma relação. 0. A base de dados Projecto 1. SQL Join (variantes) a. Cross Join b. Equi-Join c. Natural Join d.

Leia mais

Linguagem SQL Sub-linguagem DDL

Linguagem 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 mais

Sumário 1 0.1 Introdução 1 0.2 Breve História da Linguagem SQL l 0.3 Características da Linguagem SQL 3 0.4 A Composição deste Livro 3

Sumário 1 0.1 Introdução 1 0.2 Breve História da Linguagem SQL l 0.3 Características da Linguagem SQL 3 0.4 A Composição deste Livro 3 ÍNDICE o -INTRODUÇÃO Sumário 1 0.1 Introdução 1 0.2 Breve História da Linguagem SQL l 0.3 Características da Linguagem SQL 3 0.4 A Composição deste Livro 3 0.5 Sistemas Utilizados 6 0.5.1 Access 2003 (Microsoft)

Leia mais

PHP INTEGRAÇÃO COM MYSQL PARTE 1

PHP 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 mais

Treinamento sobre SQL

Treinamento 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 mais

António Rocha Nuno Melo e Castro

António Rocha Nuno Melo e Castro António Rocha Nuno Melo e Castro SQL- Strutured Query Language é a linguagem mais usada nas bases dados relacionais. Originalmente desenvolvida pela IBM Actualmente é um standard, o mais recente é o SQL:2003

Leia mais

Banco de Dados. Maurício Edgar Stivanello

Banco 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 mais

BANCO DE DADOS BANCO DE DADOS. Prof. Patrícia Lucas 3º Trimestre

BANCO 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 mais

BANCO DE DADOS. info 3º ano. Prof. Diemesleno Souza Carvalho diemesleno@iftm.edu.br www.diemesleno.com.br

BANCO DE DADOS. info 3º ano. Prof. Diemesleno Souza Carvalho diemesleno@iftm.edu.br www.diemesleno.com.br BANCO DE DADOS info 3º ano Prof. Diemesleno Souza Carvalho diemesleno@iftm.edu.br www.diemesleno.com.br Na última aula estudamos Unidade 4 - Projeto Lógico Normalização; Dicionário de Dados. Arquitetura

Leia mais

Ex.: INSERT INTO tmpautor (CDAUTOR, NMAUTOR) VALUES (1, Renato Araújo )

Ex.: 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 mais

IF685 Gerenciamento de Dados e Informação - Prof. Robson Fidalgo 1

IF685 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 mais

Índice. Introdução 31. Tutorial 1: O Microsoft Access como Sistema de Gestão de Bases de Dados Relacionais 35

Índice. Introdução 31. Tutorial 1: O Microsoft Access como Sistema de Gestão de Bases de Dados Relacionais 35 Introdução 31 1. Bases de Dados Relacionais 31 2. Modelação de Bases de Dados 31 3. Modelo de Classes UML 32 4. Linguagem SQL 32 5. Sobre o Microsoft" Access" 32 Tutorial 1: O Microsoft Access como Sistema

Leia mais

SQL SQL BANCO DE DADOS 2. Componentes do SQL (1) Componentes do SQL (2) DDL Criação de banco de dados. Padrões de SQL

SQL 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 mais

INTRODUÇÃO À LINGUAGEM SQL CRIAÇÃO DE BANCO DE DADOS E OTIMIZAÇÃO DE CONSULTAS

INTRODUÇÃO À LINGUAGEM SQL CRIAÇÃO DE BANCO DE DADOS E OTIMIZAÇÃO DE CONSULTAS Esclarecimento Licenciamento de Uso Este documento é propriedade intelectual 2012 da NRSYSTEM COMÉRCIO E SERVIÇOS DE INFORMÁTICA LTDA-ME, consiste de uma compilação de diversos materiais entre livros,

Leia mais

Pedro 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. 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 mais

CIÊNCIA E TECNOLOGIA DO RIO

CIÊNCIA E TECNOLOGIA DO RIO INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO RIO GRANDE DO NORTE BANCO DE DADOS II Docente: Éberton da Silva Marinho e-mail: ebertonsm@gmail.com eberton.marinho@ifrn.edu.br Curso de Tecnologia

Leia mais

Principais Instruções em SQL. Contidas nesta apostila as principais instruções em SQL para a manutenção em Bancos de Dados.

Principais Instruções em SQL. Contidas nesta apostila as principais instruções em SQL para a manutenção em Bancos de Dados. Principais Instruções em SQL Contidas nesta apostila as principais instruções em SQL para a manutenção em Bancos de Dados. Atenção: Esta apostila foi desenvolvida com o auxílio on-line do banco MS-ACCESS,

Leia mais

UFCD 787. Administração de base de dados. Elsa Marisa S. Almeida

UFCD 787. Administração de base de dados. Elsa Marisa S. Almeida UFCD 787 Administração de base de dados Elsa Marisa S. Almeida 1 Objectivos Replicação de base de dados Gestão de transacções Cópias de segurança Importação e exportação de dados Elsa Marisa S. Almeida

Leia mais

BANCO DE DADOS -INTRODUÇÃO AO SQL. Prof. Angelo Augusto Frozza, M.Sc. frozza@ifc-camboriu.edu.br

BANCO DE DADOS -INTRODUÇÃO AO SQL. Prof. Angelo Augusto Frozza, M.Sc. frozza@ifc-camboriu.edu.br BANCO DE DADOS -INTRODUÇÃO AO SQL Prof. Angelo Augusto Frozza, M.Sc. frozza@ifc-camboriu.edu.br Os comandos SQL podem ser agrupados em 3 classes: DDL Data Definition Language Comandos para a Definição

Leia mais

3) Palavra-chave distinct (select-from). Obter apenas os pibs distintos entre si.

3) 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 mais

Principais Instruções em SQL

Principais 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

Formação em Banco de Dados

Formação em Banco de Dados Formação em Banco de Dados Sobre a KTEC A KTEC Escola de Tecnologia oferece uma série de cursos, para os que procuram uma base sólida no aprendizado, com foco nas boas práticas que fazem a diferença no

Leia mais

PROGRAMA. Aquisição dos conceitos teóricos mais importantes sobre bases de dados contextualizados à luz de exemplos da sua aplicação no mundo real.

PROGRAMA. Aquisição dos conceitos teóricos mais importantes sobre bases de dados contextualizados à luz de exemplos da sua aplicação no mundo real. PROGRAMA ANO LECTIVO: 2005/2006 CURSO: LICENCIATURA BI-ETÁPICA EM INFORMÁTICA ANO: 2.º DISCIPLINA: BASE DE DADOS DOCENTE RESPONSÁVEL PELA REGÊNCIA: Licenciado Lino Oliveira Objectivos Gerais: Aquisição

Leia mais

PostgreSQL. www.postgresql.org. André Luiz Fortunato da Silva Analista de Sistemas CIRP / USP alf@cirp.usp.br

PostgreSQL. www.postgresql.org. André Luiz Fortunato da Silva Analista de Sistemas CIRP / USP alf@cirp.usp.br PostgreSQL www.postgresql.org André Luiz Fortunato da Silva Analista de Sistemas CIRP / USP alf@cirp.usp.br Características Licença BSD (aberto, permite uso comercial) Multi-plataforma (Unix, GNU/Linux,

Leia mais

Bases de Dados 1º semestre

Bases de Dados 1º semestre DepartamentodeEngenhariaInformática 2008/2009 BasesdeDados1ºsemestre Lab1:Introduçãoaoambiente O ficheiro create bank.sql contém um conjunto de instruções SQL para criar a base de dadosdeexemploilustradanafigura1.

Leia mais

Introdução ao SQL Avançado

Introduçã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 mais