INF BD2 SGBD SQL SERVER GRUPO: RAFAEL LUIZ MORAES HELENA MOREIRA LEITÃO RICARDO MOURA PONCE PASINI

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

Download "2015.1- INF1340 - BD2 SGBD SQL SERVER GRUPO: RAFAEL LUIZ MORAES HELENA MOREIRA LEITÃO RICARDO MOURA PONCE PASINI"

Transcrição

1 SGBD SQL SERVER GRUPO: RAFAEL LUIZ MORAES HELENA MOREIRA LEITÃO RICARDO MOURA PONCE PASINI

2 Breve Histórico Foi o início de um empreendimento conjunto entre Microsoft, Sybase e Ashton-Tate com o lançamento do Ashton- Tate/Microsoft SQL Server; SQL Server 4.21 foi inventado e pela primeira vez projetado com interface em janelas mudando a forma como os administradores interagiam com o software; Lançamento do SQL Server 6.5 com novas funcionalidades para Internet e armazenamento de dados; SQL Server 2000 foi reescrito para o modelo moderno de banco de dados fornecendo uma base sólida para o futuro; SQL Server Particionamento de Tabelas, possibilidade de escrever XQuery e código gerenciado com.net para criar CLR; SQL Server Novas funcionalidades como tipos de dados geográficos, controle de carga por usuário e facilidade de análise de dados; SQL Server 2008 R2 permite ao desenvolvedor usar uma linguagem de programação gerenciada, como C# ou VB.NET, para endereçar as consultas, ao invés de usar declarações SQL. Inclui o sistema de gerenciamento de dados mestre, gerenciamento Multi Server e um console centralizado para gerenciar casos e serviços do SQL Server 2008, incluindo bancos de dados relacionais. Essa edição possibilitou utilizar PowerPivot dentro do Excel, foi a origem do MDS e DQS (Master Data Services e Data Quality Services) e também do StreamInsight; SQL Server 2012 novos recursos e aprimoramentos incluem AlwaysOn SQL Server Failover Cluster Instances e grupos de disponibilidade, que fornece um conjunto de opções para melhorar a disponibilidade de banco de dados; SQL Server 2014 fornece uma nova capacidade de memória para tabelas que podem caber inteiramente na memória. Enquanto pequenas tabelas podem ser inteiramente residente na memória em todas as versões do SQL Server, eles também podem residir no disco, por isso o trabalho está envolvido em reservar RAM, carregar novas páginas de disco, trancando as páginas na RAM enquanto eles estão sendo operados, e muitas outras tarefas.

3 Arquitetura Diagrama de Componentes

4 Arquitetura Descrição de Componentes External Protocols: - Para se conectar ao SQL Server Database Engine é preciso ter um protocolo de rede habilitado. Microsoft SQL Server pode atender a pedidos de vários protocolos ao mesmo tempo. Database Engine: SQLOS API: 1. Storage Engine: - As principais responsabilidades do mecanismo de armazenamento incluem: a. Gerenciamento dos buffers de dados e toda E/S para os arquivos físicos; b. Controlar a simultaneidade, transações, locking e o logging ; c. Gerenciamento dos arquivos e páginas físicas utilizados para armazenar dados; d. Recuperar-se de falhas do sistema. 1. Relational Engine(Query Processor): - Possui os componentes do SQL Server que determinam o que a sua consulta exatamente precisa fazer e a melhor maneira de fazê-lo. Ele gerencia a execução de consultas, uma vez que solicita dados do mecanismo de armazenamento e processa os resultados retornados. - O SQLOS gerencia todos serviços de sistema do SQL Server de uma forma centralizada e permite um melhor gerenciamento dos recursos. Ele proporciona vários serviços do sistema operacional, tais como gerenciamento de memória lida, buffer pool, log buffer, detecção de deadlocks. Outros serviços incluem a manipulação de exceção, hospedagem para componentes externos como Common Language Runtime, etc.

5 CREATE DATABASE USE master; GO CREATE DATABASE Sales ON ( NAME = Sales_dat, FILENAME = 'C:\Program Files\Microsoft SQL Server\MSSQL12.MSSQLSERVER\MSSQL\DATA\saledat.mdf', SIZE = 10, MAXSIZE = 50, FILEGROWTH = 5 ) LOG ON ( NAME = Sales_log, FILENAME = 'C:\Program Files\Microsoft SQL Server\MSSQL12.MSSQLSERVER\MSSQL\DATA\salelog.ldf', SIZE = 5MB, MAXSIZE = 25MB, FILEGROWTH = 5MB ) ; GO

6 Tipos de Dados Os tipos de dados em SQL Server são organizados nas seguintes categorias: Numéricos exatos Numéricos aproximados Cadeias de caracteres Cadeias de caracteres Unicode Cadeia de caracteres binária Data e hora Outros tipos de dados int, decimal, numeric, etc float, real char, text, varchar nchar, ntext, nvarchar binary, image, varbinary date, time, etc xml, timestamp, etc

7 CREATE TABLE Comentários sobre as principais opções Tabela Simples: CREATE TABLE Persons ( PersonID int, LastName varchar(255), FirstName varchar(255)); Tabela com xml: CREATE TABLE HumanResources.EmployeeResumes (LName nvarchar(25), FName nvarchar(25), Resume xml(document HumanResources.HRResumeSchemaCollection)); Tabela Particionada: CREATE PARTITION FUNCTION myrangepf1 (int) AS RANGE LEFT FOR VALUES (1, 100, 1000); GO CREATE PARTITION SCHEME myrangeps1 AS PARTITION myrangepf1 TO (test1fg, test2fg, test3fg, test4fg); GO CREATE TABLE PartitionTable (col1 int, col2 char(10)) ON myrangeps1 (col1); GO

8 CREATE TABLE Comentários sobre as principais opções IDENTITY (1,1): quer dizer que o valor que for informado como identity será gerado automaticamente pelo SQL Server. Em um comando de inserção de dados na tabela não há a necessidade de informar este campo. Os valores entre parênteses (1,1) estão informando que será gerado um código diferente de um em um.

9 Tipos de Índices Tipo de índice hash Descrição índices não clusterizados com otimização de memória índices não-clusterizados com otimização de memória clusterizado não-clusterizado o consumo de memória é uma função da contagem de linhas e do tamanho das colunas de chave de índice classifica e armazena as linhas de dados da tabela ou visão em uma ordem com base na chave do índice clusterizado. É implementado como uma estrutura de índice árvore B. pode ser definido em uma tabela ou visão com um índice clusterizado ou em um heap. Cada linha do índice contém o valor da chave e um localizador de linha. Esse localizador aponta para a linha de dados que possui o valor da chave. As linhas do índice são armazenadas na ordem dos valores da chave de índice, mas não há garantias de que as linhas de dados estejam em uma determinada ordem, a menos que um índice clusterizado seja criado na tabela exclusivo garante que a chave de índice não contenha valores duplicados; portanto, cada linha em uma tabela ou exibição é, de alguma forma, exclusiva. A exclusividade pode ser uma propriedade de índices clusterizados e não-clusterizados columnstore na memória, armazena e gerencia dados usando o armazenamento de dados baseado em coluna e o processamento de consulta baseado em coluna índice com colunas incluídas índice não-clusterizado que é estendido para incluir colunas que não são de chave, além das colunas de chave

10 Tipos de Índices Tipo de índice índice em colunas computadas filtrado espacial XML Texto completo Descrição um índice em uma coluna que é derivada do valor de uma ou mais colunas ou certas entradas determinísticas índice não-clusterizado aperfeiçoado, especialmente indicado para abranger consultas que selecionam de um subconjunto bem definido de dados. Ele usa um predicado de filtro para indexar uma parte das linhas da tabela. Um índice filtrado bem projetado pode melhorar o desempenho da consulta, e reduzir os custos de manutenção e de armazenamento do índice em comparação com os índices de tabela completa. Um índice espacial permite a execução de determinadas operações de forma mais eficiente em objetos espaciais (dados espaciais) em uma coluna do tipo de dados geometry. O índice espacial reduz o número de objetos nos quais operações espaciais relativamente dispendiosas precisam ser aplicadas. Uma representação fragmentada e persistente de BLOBS (objetos binários grandes) XML na coluna de tipo de dados xml. Um tipo especial de índice funcional com base em token que é criado e mantido pelo Mecanismo de Texto Completo da Microsoft para o SQL Server. Ele fornece suporte eficiente para pesquisas sofisticadas de palavras em dados de cadeias de caracteres.

11 CREATE INDEX Índice único simples CREATE UNIQUE INDEX index_name ON table_name (column_name) Índice composto não clusterizado simples IF EXISTS (SELECT name FROM sys.indexes WHERE name = N'IX_SalesPerson_SalesQuota_SalesYTD') DROP INDEX IX_SalesPerson_SalesQuota_SalesYTD ON Sales.SalesPerson ; GO CREATE NONCLUSTERED INDEX IX_SalesPerson_SalesQuota_SalesYTD ON Sales.SalesPerson (SalesQuota, SalesYTD); GO Usando DROP_EXISTING para descartar e recriar um índice CREATE NONCLUSTERED INDEX IX_WorkOrder_ProductID ON Production.WorkOrder(ProductID) WITH (FILLFACTOR = 80, PAD_INDEX = ON, DROP_EXISTING = ON); GO

12 Tipos de Índices Clusterizados x não-clusterizados Clusterizado o o O índice clusterizado, quando presente, é nada mais nada menos que a tabela em si, ordenada por uma ou mais colunas. Uma tabela só pode ter um índice clusterizado porque as próprias linhas de dados podem ser classificadas apenas em uma única ordem. Este índice é criado automaticamente quando se é definida uma constraint do tipo PRIMARY KEY para uma ou mais colunas. o Quando necessário, o Mecanismo de Banco de Dados acrescentará uma coluna uniqueifier de 4 bytes automaticamente à tabela para tornar cada chave exclusiva. Essa coluna e seus valores são usados internamente e não podem ser vistos ou avaliados por usuários. o Se a tabela não possuir nenhum índice clusterizado, suas linhas de dados ficarão armazenadas em uma estrutura não ordenada denominada heap. Não-clusterizado o o Os índices não clusterizados têm uma estrutura distinta das linhas de dados. Ele contém os valores de chave de índice não clusterizado e cada entrada de valor de chave tem um ponteiro para a linha de dados que contém o valor de chave. O ponteiro de uma linha de índice é denominado localizador de linhas. A estrutura do localizador de linhas depende de as páginas de dados serem armazenadas em um heap ou em uma tabela clusterizada. Para o heap, o localizador de linhas é um ponteiro para a linha. Para a tabela clusterizada, o localizador de linhas é a chave de índice clusterizado.

13 Tipos de Índices Clusterizados x não-clusterizados

14 Tipos de Índices Clusterizados x não-clusterizados /* índice clusterizado (default) */ ALTER TABLE dbo.mytable ADD CONSTRAINT PK_MyTable PRIMARY KEY (Id); /* índice não-clusterizado (default) */ ALTER TABLE dbo.mytable ADD CONSTRAINT UC_MyTable_Id UNIQUE (Id); /* índice não-clusterizado */ ALTER TABLE dbo.mytable ADD CONSTRAINT PK_MyTable PRIMARY KEY NONCLUSTERED (Id); /* índice clusterizado */ ALTER TABLE dbo.mytable ADD CONSTRAINT UC_MyTable_Id UNIQUE CLUSTERED (Id);

15 Otimização Como ver um plano Utilizando SQL Management Studio: - Plano Estimado - Plano Atual

16 Otimização Exemplo comentado de um plano SELECT C.[CompanyName], OD.[ProductID], OD.[Discount], OD.[Quantity], OD.[UnitPrice], O.[OrderDate], O.[RequiredDate], O.[ShippedDate] FROM Orders O INNER JOIN [dbo].[order Details] OD ON O.[OrderID] = OD.[OrderID] INNER JOIN [dbo].[products] P ON OD.[ProductID] = P.[ProductID] INNER JOIN [dbo].[customers] C ON C.[CustomerID] = O.[CustomerID] WHERE O.[ShippedDate] > O.[RequiredDate]

17 Otimização Exemplo comentado de um plano SELECT * FROM Person.Contact

18 Otimização Como ver um plano Utilizando opção ShowPlan: - Este método é muito semelhante ao anterior (na verdade isso é o que o SQL Server Management Studio faz internamente), pode ser utilizado quando você não tiver o SQL Server Management Studio disponível. Antes de executar a sua consulta, execute uma das seguintes afirmações. A declaração deve ser a única instrução no lote, ou seja, você não pode executar outra instrução ao mesmo tempo: SET SHOWPLAN_TEXT ON SET SHOWPLAN_ALL ON SET SHOWPLAN_XML ON SET STATISTICS PROFILE ON SET STATISTICS XML ON - Opção recomendada a ser utilizada pois é equivalente a Incluir plano de execução real do SQL Server MS - Estas são opções de conexão portanto só precisa executar uma vez por conexão. Deste ponto em diante todas as declarações serão acompanhadas de um conjunto de resultados adicional contendo o seu plano de execução no formato desejado. Basta simplesmente executar a consulta normalmente e o plano aparecerá - Assim que estiver pronto, você pode desativar essa opção com a seguinte declaração: SET <<option>> OFF

19 Otimização Como ver um plano - SET SHOWPLAN_TEXT - Apresenta um plano de execução estimado baseado em texto, sem executar a consulta; - SET SHOWPLAN_ALL - Apresenta um plano de execução estimado baseado em texto com estimativas de custos, sem executar a consulta; - SET SHOWPLAN_XML - Exibe um plano de execução estimado baseado em XML com estimativas de custos, sem executar a consulta. Este é equivalente ao "Display estimated execution plan..." opção no SQL Server Management Studio; - SET STATISTICS PROFILE - Executa a consulta e exibe um plano de execução real baseado em texto; - SET STATISTICS XML - Executa a consulta e exibe um plano de execução real baseado em XML. Isto é equivalente à opção "Incluir plano de execução real" no SQL Server Management Studio.

20 Otimização Exemplo comentado de um plano Este exemplo mostra como índices são usados pelo SQL Server, na medida em que ele processa as instruções. Esta é a consulta que usa um índice: USE AdventureWorks2012; GO SET SHOWPLAN_TEXT ON; GO SELECT * FROM Production.Product WHERE ProductID = 905; GO SET SHOWPLAN_TEXT OFF; GO Resultado: StmtText SELECT * FROM Production.Product WHERE ProductID = 905; StmtText Clustered Index Seek(OBJECT:([AdventureWorks2012].[Production].[Product].[PK_Product_ProductID]), ORDERED FORWARD)

21 Otimização Exemplo comentado de um plano Esta é a consulta que usa Set showplan xml ON GO SET SHOWPLAN_XML ON ; GO SELECT * FROM [dbo].[databaselog] ; SET SHOWPLAN_XML OFF ; GO < StmtSimpleStatementText="SELECT * FROM [dbo].[databaselog]; "StatementId="1" StatementCompId="1" StatementType="SELECT"StatementSubTreeCost=" " StatementEstRows="389" StatementOptmLevel="TRIVIAL"> < StatementSetOptions QUOTED_IDENTIFIER="false" ARITHABORT="true"CONCAT_NULL_YIELDS_NULL="false" ANSI_NULLS="false" ANSI_PADDING="false"ANSI_WARNINGS="false" NUMERIC_ROUNDABORT="false" /> < QueryPlan CachedPlanSize="9"> < RelOp NodeId="0" PhysicalOp="Table Scan" LogicalOp="Table Scan" EstimateRows="389"EstimateIO=" " EstimateCPU=" " AvgRowSize="8569"EstimatedTotalSubtreeCost=" " Parallel="0" EstimateRebinds="0"EstimateRewinds="0"> <OutputList> < ColumnReference Database="[AdventureWorks]" Schema="[dbo]" Table="[DatabaseLog]"Column="DatabaseLogID" /> < ColumnReference Database="[AdventureWorks]" Schema="[dbo]" Table="[DatabaseLog]"Column="PostTime" /> < ColumnReference Database="[AdventureWorks]" Schema="[dbo]" Table="[DatabaseLog]"Column="DatabaseUser" /> < ColumnReference Database="[AdventureWorks]" Schema="[dbo]" Table="[DatabaseLog]"Column="Event" /> < ColumnReference Database="[AdventureWorks]" Schema="[dbo]" Table="[DatabaseLog]"Column="Schema" /> < ColumnReference Database="[AdventureWorks]" Schema="[dbo]" Table="[DatabaseLog]"Column="Object" /> < ColumnReference Database="[AdventureWorks]" Schema="[dbo]" Table="[DatabaseLog]"Column="TSQL" /> < ColumnReference Database="[AdventureWorks]" Schema="[dbo]" Table="[DatabaseLog]"Column="XmlEvent" /> </ OutputList>

22 Transação Exemplo Completo BEGIN TRANSACTION UPDATE FROM TbContas SET NuSaldo= WHERE NuSaldo IF = 0 COMMIT ELSE ROLLBACK RAISERROR(5001,16,1, ERRO NA ALTERACAO DO SALDO DA TBL TBCONTA ) END Exemplo de save point e commit BEGIN TRANSACTION UPDATE FROM TbContas SET NuSaldo= WHERE NuSaldo SAVE TRANSACTION INS_TBLOG INSERT INTO tblog SELECT NuSaldo, IdConta From Deleted COMMIT Exemplo de rollback BEGIN INSERT INTO ValueTable VALUES(1), (2); ROLLBACK INSERT INTO ValueTable VALUES(3),(4); SELECT [value] FROM ValueTable; DROP TABLE ValueTable; Resultado: --value

23 Concorrência O que é? Classificações: Controle de simultaneidade pessimista; Controle de simultaneidade otimista;

24 Concorrência Matriz de Bloqueios

25 Concorrência Matriz de Bloqueios IS IX SIX

26 Concorrência Matriz de Bloqueios

27 Concorrência Deadlocks

28 Concorrência Bloqueio de Intenção Transaction Isolation Level

29 Concorrência Tipos de Nível de Isolamento Como escolher o melhor tipo?

30 Concorrência Comandos SQL e qualificadores

31 Procedimentos Armazenados Sintaxe:

32 Gatilhos O que são? Sintaxe Usando um gatilho DML com uma mensagem de lembrete O gatilho DML a seguir imprime uma mensagem para o cliente quando alguém tenta adicionar ou alterar dados na tabela Customer no banco de dados AdventureWorks2012. IF OBJECT_ID ('Sales.reminder1', 'TR') IS NOT NULL DROP TRIGGER Sales.reminder1; GO CREATE TRIGGER reminder1 ON Sales.Customer AFTER INSERT, UPDATE AS RAISERROR ('Notify Customer Relations', 16, 10); GO

33 Exemplo de procedimento armazenado ativado por gatilho Exemplo1: set ANSI_NULLS ON set QUOTED_IDENTIFIER ON GO ALTER TRIGGER [dbo].[ra2newsletter] ON [dbo].[reiseagent] AFTER INSERT AS int BEGIN SET NOCOUNT ON; -- Insert statements for trigger here Select From Inserted EXEC END Exemplo2: USE [database_name] IF EXISTS (SELECT 1 FROM sys.triggers WHERE name = N'trigger_name') BEGIN THROW 51000, 'The trigger [trigger_name] already exists.', 1; END ELSE CREATE TRIGGER [trigger_name] ON qf.customer_working_hours AFTER INSERT, UPDATE, DELETE AS BEGIN SET NOCOUNT ON EXEC [procedure_database].qf.serviverefreshcustomer_wh END BEGIN END

34 Referências Conheça a história do Microsoft SQL Server Disponível em: Acesso em: 12 jun SQL Server Disponível em: Acesso em: 12 jun.2015 Evolução do SQL Server da versão 2000 até a 2012 Disponível em: Acesso em: 12 jun Catálogo de referência e API da Microsoft Disponível em: https://msdn.microsoft.com/pt-br/library/ Acesso em: 12 jun Microsoft API and reference catalog Disponível em: https://msdn.microsoft.com/en-us/ Acesso em: 12 jun Mql server beginning of sql server architecture terminology guest post Disponível em: Acesso em: 12 jun Sql server architecture Disponível em: Acesso em: 12 jun. 2015

35 Referências Wikipedia - Microsoft SQL Server Disponível em: Acesso em: 12 jun O uso de índices no SQL Server Fundamentos Disponível em: https://sqlserverdevelopment.wordpress.com/2011/05/25/o-uso-de-indices-no-sql-server-fundamentos/ Acesso em: 13 jun Diretrizes de design de índices clusterizados Disponível em: https://technet.microsoft.com/pt-br/library/ms190639(v=sql.105).aspx Acesso em: 13 jun Índices clusterizados e não clusterizados descritos Disponível em: https://msdn.microsoft.com/pt-br/library/ms aspx Acesso em: 13 jun.2015 Clustered vs. Nonclustered Index Structures in SQL Server Disponível em: https://www.youtube.com/watch?v=itcoilsfvjq Acesso em: 13 jun Transações SQL SERVER Disponível em: Acesso em: 14 jun Compatibilidade de bloqueios (Mecanismo de Banco de Dados) Disponível em: https://technet.microsoft.com/pt-br/library/ms186396%28v=sql.105%29.aspx Acesso em: 12 jun. 2015

36 Referências Compatibilidade de bloqueios Disponível em: https://technet.microsoft.com/pt-br/library/ms172925%28v=sql.110%29.aspx Acesso em: 12 jun Understanding Concurrency Control Disponível em: https://msdn.microsoft.com/en-us/library/ms378709%28v=sql.110%29.aspx Acesso em: 12 jun Trabalhando com Concorrência ou Simultaneidade de Dados Disponível em: https://pedrogalvaojunior.wordpress.com/2011/11/09/trabalhando-com-concorrencia-ousimultaneidade-de-dados-parte-i/ Acesso em: 12 jun Controlando o comportamento bloqueios e versionamento de linhas com o set transaction isolation level Disponível em: https://pedrogalvaojunior.wordpress.com/2011/11/16/controlando-o-comportamento-bloqueios-eversionamento-de-linhas-com-o-set-transaction-isolation-level/ Acesso em: 12 jun Controle de Concorrência Disponível em: Acesso em: 12 jun Referências aos sites e outros documentos utilizados, segundo a norma ABNT NBR 6023:2002 (em especial, vide o item Artigo e/ou matéria de revista, boletim etc. em meio eletrônico )

SQL Server Triggers Aprenda a utilizar triggers em views e auditar as colunas atualizadas em uma tabela

SQL Server Triggers Aprenda a utilizar triggers em views e auditar as colunas atualizadas em uma tabela SQL Server Triggers Aprenda a utilizar triggers em views e auditar as colunas atualizadas em uma tabela Certamente você já ouviu falar muito sobre triggers. Mas o quê são triggers? Quando e como utilizá-las?

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

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

Um objeto de estatística contém informações de distribuição de valores de uma ou mais colunas de uma tabela ou view indexada

Um objeto de estatística contém informações de distribuição de valores de uma ou mais colunas de uma tabela ou view indexada Desvendando Estatísticas do SQL Server Parte 1 Nesta série de artigos vamos dar um mergulho profundo nas Teorias Probabilísticas (mais conhecido como estatísticas) do SQL Server. Introdução Estatísticas

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

Structured Query Language (SQL)

Structured Query Language (SQL) Structured Query Language (SQL) SQL-Breve Histórico : # CREATE, ALTER e DROP; # BEGIN TRANSACTION, ROLLBACK e COMMIT; # GRANT, REVOKE e DENY; 1 Structured Query Language (SQL) Desenvolvida pelo departamento

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

Banco de dados. Linguagens de Banco de Dados II. Wedson Quintanilha da Silva - www.assembla.com/spaces/objetivobd/documents

Banco de dados. Linguagens de Banco de Dados II. Wedson Quintanilha da Silva - www.assembla.com/spaces/objetivobd/documents Banco de dados Linguagens de Banco de Dados II 1 Linguagem de Definição de Dados - DDL Comandos utilizados para criação do esquema de dados; Um DDL permite ao utilizador definir tabelas novas e elementos

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

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

TRANSAÇÕES. Considerando que estes comandos fazem parte de uma TRANSAÇÃO (veremos como indicar isso):

TRANSAÇÕES. Considerando que estes comandos fazem parte de uma TRANSAÇÃO (veremos como indicar isso): TRANSAÇÕES 1. Visão Geral Uma transação é uma unidade lógica de trabalho (processamento) formada por um conjunto de comandos SQL cujo objetivo é preservar a integridade e a consistência dos dados. Ao final

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

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

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

ADMINISTRAÇÃO DE BANCO DE DADOS

ADMINISTRAÇÃO DE BANCO DE DADOS ADMINISTRAÇÃO DE BANCO DE DADOS ARTEFATO 03 AT03 Diversos II Page 1 of 25 Indice EXEMPLOS COM GROUP BY E COM A CLÁUSULA HAVING - TOTALIZANDO DADOS... 3 GROUP BY... 3 Cláusula HAVING com GROUP BY... 5 ENTENDENDO

Leia mais

Programação WEB II. PHP e Banco de Dados. progweb2@thiagomiranda.net. Thiago Miranda dos Santos Souza

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

Manter estatísticas atualizadas é uma das regras de ouro na busca por performance.

Manter estatísticas atualizadas é uma das regras de ouro na busca por performance. Atualização de Estatísticas Um objeto de estatística pode ser atualizado manualmente pelo usuário, através dos comandos SP_UPDATESTATS e/ou UPDATE STATISTICS. Enquanto que a procedure SP_UPDATESTATS atualiza

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

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

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

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

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

ADMINISTRAÇÃO DE BANCO DE DADOS

ADMINISTRAÇÃO DE BANCO DE DADOS ADMINISTRAÇÃO DE BANCO DE DADOS ARTEFATO 06 AT06 Índices 1 Indice INTRODUÇÃO... 3 CLUSTERED INDICES... 4 NONCLUSTERED INDICES... 5 TRANSACT-SQL AND INDICES... 6 COMPOSITE INDEX... 8 ALTERING INDICES...

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

Núcleo de Pós Graduação Pitágoras

Núcleo de Pós Graduação Pitágoras Núcleo de Pós Graduação Pitágoras Professor: Fernando Zaidan Disciplina: Modelagem e Projeto de Banco de Dados Especialização em Tecnologia da Informação - Ênfases Março- 2009 1 Modelo Físico Introduçã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

CONCORRÊNCIA. 1. Introdução. Recursos exclusivos. Não necessita controle. Abundância de recursos compartilhados. Controle necessário mas mínimo

CONCORRÊNCIA. 1. Introdução. Recursos exclusivos. Não necessita controle. Abundância de recursos compartilhados. Controle necessário mas mínimo CONCORRÊNCIA 1. Introdução Recursos exclusivos Não necessita controle Abundância de recursos compartilhados Controle necessário mas mínimo Harmonia, provavelmente não haverá conflito Recursos disputados

Leia mais

LINGUAGEM SQL. SQL Server 2008 Comandos iniciais

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

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

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

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 - Banco de Dados. Disciplina: Banco de Dados. Professor: José Antônio. José Antônio - CEFET-RN 23/09/2015

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

PROCEDIMENTOS ARMAZENADOS (Stored Procedures)

PROCEDIMENTOS ARMAZENADOS (Stored Procedures) PROCEDIMENTOS ARMAZENADOS (Stored Procedures) 1. Introdução Stored Procedure é um conjunto de comandos, ao qual é atribuído um nome. Este conjunto fica armazenado no Banco de Dados e pode ser chamado a

Leia mais

Gerenciamento de um Sistema de

Gerenciamento de um Sistema de SBD Gerenciamento de um Sistema de Banco de Dados Prof. Michel Nobre Muza ua michel.muza@ifsc.edu.br Prof. Marcos Antonio Viana Nascimento Por que é importante: Motivação Participar na organização e no

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

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

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

TRANSAÇÕES. Considerando que estes comandos fazem parte de uma TRANSAÇÃO (veremos como indicar isso):

TRANSAÇÕES. Considerando que estes comandos fazem parte de uma TRANSAÇÃO (veremos como indicar isso): TRANSAÇÕES 1. Introdução Transação Uma transação é uma unidade lógica de trabalho (processamento), formada por um conjunto de comando SQL, que tem por objetivo preservar a integridade e a consistência

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

Aula Extra Conexão ODBC para aplicações Delphi 7 que usam SQL Server 2005

Aula Extra Conexão ODBC para aplicações Delphi 7 que usam SQL Server 2005 Nome Número: Série Aula Extra Conexão ODBC para aplicações Delphi 7 que usam SQL Server 2005 Proposta do projeto: Competências: Compreender a orientação a objetos e arquitetura cliente-servidor, aplicando-as

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

FAPLAN - Faculdade Anhanguera Passo Fundo Gestão da Tecnologia da Informação Banco de Dados II Prof. Eder Pazinatto Stored Procedures Procedimento armazenados dentro do banco de dados Um Stored Procedure

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

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

António Rocha Nuno Melo e Castro

António Rocha Nuno Melo e Castro António Rocha Nuno Melo e Castro !"#$ Excepção: condição de erro; quando ocorre o erro é levantada uma excepção que interrompe o fluxo normal de execução do programa e o direcciona para uma rotina de tratamento

Leia mais

Introdução à linguagem SQL

Introdução à linguagem SQL Introdução à linguagem SQL 1 Histórico A linguagem de consulta estruturada (SQL - Structured Query Language) foi desenvolvida pela empresa IBM, no final dos anos 70. O primeiro banco de dados comercial

Leia mais

SQL Server - Arquitectura Cliente/Servidor

SQL Server - Arquitectura Cliente/Servidor MS - SQL Server Índice SQL Server - Arquitectura Cliente/Servidor... 3 SQL Server - Arquitectura da Base de Dados... 4 SQL Server - SQL Server Enterprise Manager... 8 SQL Server - Criar uma base de dados...

Leia mais

Worldwide Online TechDay. 30 - Outubro

Worldwide Online TechDay. 30 - Outubro 30 - Outubro 1 Como funciona um banco de dados Microsoft SQL Server? Fabricio Catae Premier Field Engineer Microsoft Certified Master Twitter: @fcatae WebSite: http://blogs.msdn.com/fcatae/ 2 Nossos Parceiros

Leia mais

Prof.: Clayton Maciel Costa clayton.maciel@ifrn.edu.br

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

Fundamentos do Sistema Gerenciador de Banco de Dados

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

Linguagem SQL (Parte II)

Linguagem SQL (Parte II) 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 II Introdução

Leia mais

Structured Query Language (SQL) Aula Prática

Structured Query Language (SQL) Aula Prática Structured Query Language (SQL) Aula Prática Linguagens de SGBD Durante o desenvolvimento do sistema R, pesquisadores da IBM desenvolveram a linguagem SEQUEL, primeira linguagem de acesso para Sistemas

Leia mais

UNIVERSIDADE VEIGA DE ALMEIDA CURSO DE BACHARELADO EM CIÊNCIA DA COMPUTAÇÃO CURSO SUPERIOR DE TECNOLOGIA EM PROCESSAMENTO DE DADOS BANCO DE DADOS

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

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

Administração e Optimização de BDs

Administração e Optimização de BDs Departamento de Engenharia Informática 2010/2011 Administração e Optimização de BDs Mini-Projecto 1 2º semestre A resolução deve ser claramente identificada com o número de grupo e entregue sob a forma

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

Controle de transações em SQL

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

BANCO DE DADOS II Prof. Ricardo Rodrigues Barcelar http://www.ricardobarcelar.com

BANCO DE DADOS II Prof. Ricardo Rodrigues Barcelar http://www.ricardobarcelar.com - Aula 11-1. INTRODUÇÃO TRIGGERS (GATILHOS OU AUTOMATISMOS) Desenvolver uma aplicação para gerenciar os dados significa criar uma aplicação que faça o controle sobre todo ambiente desde a interface, passando

Leia mais

Transações Seguras em Bancos de Dados (MySQL)

Transações Seguras em Bancos de Dados (MySQL) Transações Seguras em Bancos de Dados (MySQL) Índice Entendendo os storage engines do MySQL 5 1 As ferramentas 1 Mais algumas coisas que você deve saber 1 Com a mão na massa 2 Mais ferramentas Usando o

Leia mais

TECNOLOGIA EM SISTEMAS PARA INTERNET PROJETO DE BANCO DE DADOS

TECNOLOGIA EM SISTEMAS PARA INTERNET PROJETO DE BANCO DE DADOS Exemplos de Scripts SQL (PostgreSQL) Pizzaria 1 2 Criação de BANCO DE DADOS CREATE DATABASE nome_do_banco; CREATE DATABASE pizzaria; Criação de TABELAS SOMENTE COM CHAVE PRIMÁRIA CREATE TABLE nome_da_tabela

Leia mais

ROTEIRO. A Linguagem SQL (I parte) CEFET.PHB - PI Prof. Jefferson Silva. As partes da linguagem SQL. A Linguagem de Definição de Dados (SQL-DDL)

ROTEIRO. A Linguagem SQL (I parte) CEFET.PHB - PI Prof. Jefferson Silva. As partes da linguagem SQL. A Linguagem de Definição de Dados (SQL-DDL) CEFET.PHB - PI Prof. Jefferson Silva SQL (MySql) ROTEIRO I PARTE - INTRODUÇÃO AO SQL COMANDOS E SUAS PARTES DA LINGUAGEM SQL II PARTE ADMINSTRAÇÃO DE BANCO DE DADOS UTILIZANDO MYSQL PRINCIPAIS INSTRUÇÕES

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

DBA Júnior Laboratórios Extra

DBA Júnior Laboratórios Extra DBA Júnior Laboratórios Extra Hugo Torralbo hugo@nervinformatica.com.br Esta obra está licenciada sob a licença Creative Commons Atribuição-SemDerivados 3.0 Brasil. Para ver uma cópia desta licença, visite

Leia mais

SQL DDL Criando Tabelas e Restrições Instituto Militar de Engenharia IME Material extraido parcialmente de notas de aula de Maria Luiza Campos e Arnaldo Vieira Comandos de Definição de Dados Aplicação

Leia mais

SQL. Hélder Antero Amaral Nunes

SQL. Hélder Antero Amaral Nunes SQL Hélder Antero Amaral Nunes 2 Introdução Desenvolvida pelo departamento de pesquisa da IBM na década de 1970 (System R); Linguagem padrão de BD Relacionais; Apresenta várias padrões evolutivos: SQL86,

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

Exemplos de Gatilhos. Prof. Márcio Bueno {bd2tarde,bd2noited}@marciobueno.com

Exemplos de Gatilhos. Prof. Márcio Bueno {bd2tarde,bd2noited}@marciobueno.com Exemplos de Gatilhos Prof. Márcio Bueno {bd2tarde,bd2noited}@marciobueno.com Exemplo 1 Enunciado Crie um gatilho que emita uma mensagem de quantas linhas serão inseridas ou modificadas na tabela authors

Leia mais

BD Oracle. Licenciatura em Engenharia Informática e Computação. Bases de Dados 2003/04

BD Oracle. Licenciatura em Engenharia Informática e Computação. Bases de Dados 2003/04 BD Oracle SGBD Oracle Licenciatura em Engenharia Informática e Computação Bases de Dados 2003/04 BD Oracle Introdução aos SGBD Base de Dados Colecção de dados que descrevem alguma realidade Sistema de

Leia mais

PROGRAMAÇÃO EM BANCO DADOS Store Procedure e Trigger

PROGRAMAÇÃO EM BANCO DADOS Store Procedure e Trigger PROGRAMAÇÃO EM BANCO DADOS Store Procedure e Trigger a tecnologia de banco de dados permite persistir dados de forma a compartilha-los com varias aplicações. Aplicação 1 aplicação 2 aplicação 3 SGDB Banco

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 CONCEITOS BÁSICOS

BANCO DE DADOS CONCEITOS BÁSICOS Universidade Federal da Paraíba UFPB Centro de Energias Alternativas e Renováveis - CEAR Departamento de Eng. Elétrica DEE BANCO DE DADOS CONCEITOS BÁSICOS Isaac Maia Pessoa Introdução O que é um BD? Operações

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

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

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

Programação SQL. Manipulação de Dados. DML Data Manipulation Language

Programação SQL. Manipulação de Dados. DML Data Manipulation Language Programação SQL Manipulação de Dados DML Data Manipulation Language Manipulação de Dados (DML) Os comandos INSERT, UPDATE, DELETE, são normalmente classificados como pertencendo a uma sublinguagem da linguagem

Leia mais

MER e Conceitos gerais

MER e Conceitos gerais MER e Conceitos gerais IBGE 1)O Modelo de Entidades Relacionamentos, segundo Paulo Cougo, descreve o mundo como:... cheio de coisas que possuem características próprias e que se relacionam entre si. Essas

Leia mais

Triggers em PostgreSQL. Linguagem de Programação de Banco de Dados. Triggers em PostgreSQL. Triggers em PostgreSQL

Triggers em PostgreSQL. Linguagem de Programação de Banco de Dados. Triggers em PostgreSQL. Triggers em PostgreSQL Prof. Ms. Luiz Alberto Contato: lasf.bel@gmail.com Linguagem de Programação de Banco de Dados Triggers em PostgreSQL Todos os bancos de dados comerciais possuem uma linguagem procedural auxiliar para a

Leia mais

SQL. Histórico BANCO DE DADOS. Conceito. Padrões de SQL (1) Componentes do SQL (1) Padrões de SQL (2) (DDL: CREATE TABLE, CONSTRAINTS)

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

Auditoria de sistemas Deixe que seu banco de dados faça o trabalho por você

Auditoria de sistemas Deixe que seu banco de dados faça o trabalho por você Auditoria de sistemas Deixe que seu banco de dados faça o trabalho por você por Cristóferson Guimarães Magalhães Bueno e Odilon Corrêa da Silva 1 O objetivo deste artigo é demonstrar como criar um sistema

Leia mais

CONCORRÊNCIA. Buscando aumentar os níveis de concorrência redução da espera em detrimento do isolamento, a SQL definiu alguns níveis de isolamento.

CONCORRÊNCIA. Buscando aumentar os níveis de concorrência redução da espera em detrimento do isolamento, a SQL definiu alguns níveis de isolamento. CONCORRÊNCIA 1. Introdução O termo concorrência se refere ao fato de que os SGBDs em geral permitem que muitas transações tenham acesso ao mesmo banco de dados ao mesmo tempo. Em um sistema desse tipo,

Leia mais

BANCO DE DADOS: SQL. Edson Anibal de Macedo Reis Batista. 27 de janeiro de 2010

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

Gabarito - Banco de Dados SQL - 30/07/2013 AULA 01

Gabarito - Banco de Dados SQL - 30/07/2013 AULA 01 Gabarito - Banco de Dados SQL - 30/07/2013 AULA 01 1 1- Bancos de dados compreendem desde agendas telefônicas até sistemas computadorizados. (Sim) 2- Só podemos instalar o SQL Server Express se tivermos

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

estiver abaixo ou igual ao mínimo, um novo pedido é acrescentado a uma relação pedidos.

estiver abaixo ou igual ao mínimo, um novo pedido é acrescentado a uma relação pedidos. TRIGGERS Um trigger é uma instrução que o sistema executa automaticamente como um efeito colateral de uma modificação no banco de dados. Para criar um mecanismo de trigger, temos de cumprir dois requisitos:

Leia mais

Disciplina: Unidade V: Prof.: E-mail: Período:

Disciplina: Unidade V: Prof.: E-mail: Período: Encontro 17 Disciplina: Sistemas de Banco de Dados Unidade V: Introdução à Linguagem SQL Prof.: Mario Filho E-mail: pro@mariofilho.com.br Período: 5º. SIG - ADM 13. Introdução à Linguagem SQL Introdução

Leia mais

BANCO DE DADOS Parte 4

BANCO DE DADOS Parte 4 BANCO DE DADOS Parte 4 A Linguagem SQL Introdução Desenvolvida pelo depto de pesquisa da IBM na década de 1970 (System R) Linguagem padrão de BD Relacionais; Apresenta várias padrões evolutivos: SQL86,

Leia mais

PROGRAMAÇÃO EM BANCO DADOS Stored Procedure e Trigger

PROGRAMAÇÃO EM BANCO DADOS Stored Procedure e Trigger PROGRAMAÇÃO EM BANCO DADOS Stored Procedure e Trigger A tecnologia de banco de dados permite persistir dados de forma a compartilha-los com varias aplicações. Aplicação 1 aplicação 2 aplicação 3 SGDB Banco

Leia mais

UNISA Universidade de Santo Amaro. http://www.unisa.br. Material de Estudo. Módulo I: Básico Banco de dados SQL Server. http://www.unisa-sis.

UNISA Universidade de Santo Amaro. http://www.unisa.br. Material de Estudo. Módulo I: Básico Banco de dados SQL Server. http://www.unisa-sis. UNISA Universidade de Santo Amaro http://www.unisa.br Material de Estudo Módulo I: Básico Banco de dados SQL Server http://www.unisa-sis.info Junho/2010 Objetivo do Workshop Compartilhar e apresentar

Leia mais

Procedimentos armazenados

Procedimentos armazenados Procedimentos armazenados Prof. Márcio Bueno {bd2tarde,bd2noited}@marciobueno.com Material da Profª Maria Lígia B. Perkusich Procedimentos armazenados (i) Definição Um procedimento armazenado (stored procedure)

Leia mais

Transações. Prof. Márcio Bueno. {bd2tarde,bd2noited}@marciobueno.com. Material do Prof. Paulo Pires

Transações. Prof. Márcio Bueno. {bd2tarde,bd2noited}@marciobueno.com. Material do Prof. Paulo Pires Transações Prof. Márcio Bueno {bd2tarde,bd2noited}@marciobueno.com Material do Prof. Paulo Pires Introdução a Transações SGBD sistema de processamento de operações de acesso ao BD SGBDs são em geral multi-usuários

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

PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS ARMAZENAMENTO EM BD NO DM. Prof. Angelo Augusto Frozza, M.Sc. http://about.me/tilfrozza

PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS ARMAZENAMENTO EM BD NO DM. Prof. Angelo Augusto Frozza, M.Sc. http://about.me/tilfrozza PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS ARMAZENAMENTO EM BD NO DM Prof. Angelo Augusto Frozza, M.Sc. http://about.me/tilfrozza ROTEIRO Introdução App de exemplo Implementação do exemplo Testes realizados

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

PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS ARMAZENAMENTO EM BD NO DM. Prof. Angelo Augusto Frozza, M.Sc. http://about.me/tilfrozza

PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS ARMAZENAMENTO EM BD NO DM. Prof. Angelo Augusto Frozza, M.Sc. http://about.me/tilfrozza PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS ARMAZENAMENTO EM BD NO DM Prof. Angelo Augusto Frozza, M.Sc. http://about.me/tilfrozza ROTEIRO Introdução App de exemplo Implementação do exemplo Testes realizados

Leia mais

SQL Server 2008. Ferramenta de administração. SQL Server Management Studio. 1º passo conectar ao banco de dados 2ª Query (consulta) usando SQL

SQL Server 2008. Ferramenta de administração. SQL Server Management Studio. 1º passo conectar ao banco de dados 2ª Query (consulta) usando SQL SQL Server 2008 Ferramenta de administração SQL Server Management Studio Ferramenta de acesso e administração de dados em modo gráfico 1º passo conectar ao banco de dados 2ª Query (consulta) usando SQL

Leia mais

Junções e Índices em Tabelas

Junções e Índices em Tabelas Junções e Índices em Tabelas Prof. Fernanda Baião fernanda.baiao@uniriotec.com.br SGBD Considerados MySQL (http://www.mysql.org) SGBD gratuito e simples, sem muitos recursos avançados Fácil de instalar

Leia mais