Baixe o app para aproveitar ainda mais
Prévia do material em texto
Desenvolvimento de software Fabiano Gonçalves dos Santos Aula 7 Sistemas de Banco de Dados • Redundância e inconsistência de dados: • Dificuldade de acesso a dados: • Isolamento de dados • Problemas de integridade • Problemas de atomicidade • Anomalias de acesso concorrente • Problemas de segurança 2 Sistema Gerenciador de Banco de Dados (SGBD) • A arquitetura de implementação de um banco de dados costuma seguir um de três padrões: –Banco de dados embutido –Banco de dados local –Arquitetura cliente-servidor 3 Arquitetura cliente-servidor 4 Problemas decorrentes de armazenamento de dados em arquivos de texto ou planilhas ou relacionados a bancos de dados não centralizados • Separação entre programas e dados • Armazenamento persistente de dados • Padronização de dados • Compartilhamento de dados • Controle de redundância e restrições de integridade • Restrições de acesso • Eliminação de código redundante nas aplicações para gerenciamento de dados e flexibilidade • Disponibilidade • Escalabilidade 5 Modelagem de Dados • Entidades –Pessoas – Ideias –Avaliações • Atributos • Tabelas • Super-chave • Chaves Candidatas • Chaves Primárias • Relacionamentos • Esquema 6 Regras • Regras de Entidades • Regras de Relacionamentos • Regras de Atributos • Regras de Negócio 7 SQL Server • O SQL Server é o sistema gerenciador de bancos de dados da Microsoft 8 h tt p s :/ /u p lo a d .w ik im e d ia .o rg / Tipos de dados do SQL Server 9 Numéricos exatos bigint -2 6^3 (-9.223.372.036.854.775.808) a 2 6^3-1 (9.223.372.036.854.775.807) Ocupa 8 bytes de armazenamento bit Tipo de dados inteiro que pode armazenar os valores 1, 0 ou NULL. decimal Tipo numérico que pode ter precisão e escala definidos. Exemplo: [Coluna_exemplo decimal(5,2)] Assim, essa coluna armazenará valores como 123,00. Precisão é o numero total de dígitos, e escala é a quantidade de dígitos após o ponto decimal. A quantidade de bytes ocupados depende de precisão e escala definidos. int -2 3^1 (-2.147.483.648) a 2 3^1-1 (2.147.483.647) Ocupa 4 bytes de armazenamento money -922.337.203.685.477,5808 a 922.337.203.685.477,5807 Ocupa 8 bytes de armazenamento numeric É equivalente ao tipo decimal. smallint -2 1^5 (-32.768) a 2 1^5-1 (32.767) Ocupa 2 bytes de armazenamento smallmoney -214.748,3648 a 214.748,3647 Ocupa 4 bytes de armazenamento tinyint 0 a 255 Ocupa 1 byte de armazenamento Tipos de dados do SQL Server 10 Numéricos exatos bigint -2 6^3 (-9.223.372.036.854.775.808) a 2 6^3-1 (9.223.372.036.854.775.807) Ocupa 8 bytes de armazenamento bit Tipo de dados inteiro que pode armazenar os valores 1, 0 ou NULL. decimal Tipo numérico que pode ter precisão e escala definidos. Exemplo: [Coluna_exemplo decimal(5,2)] Assim, essa coluna armazenará valores como 123,00. Precisão é o numero total de dígitos, e escala é a quantidade de dígitos após o ponto decimal. A quantidade de bytes ocupados depende de precisão e escala definidos. int -2 3^1 (-2.147.483.648) a 2 3^1-1 (2.147.483.647) Ocupa 4 bytes de armazenamento money -922.337.203.685.477,5808 a 922.337.203.685.477,5807 Ocupa 8 bytes de armazenamento numeric É equivalente ao tipo decimal. smallint -2 1^5 (-32.768) a 2 1^5-1 (32.767) Ocupa 2 bytes de armazenamento smallmoney -214.748,3648 a 214.748,3647 Ocupa 4 bytes de armazenamento tinyint 0 a 255 Ocupa 1 byte de armazenamento Tipos de dados do sql server 11 Numéricos aproximados float Ocupada até 8 bytes, representando valores: [-1,79E+308 a -2,23E-308]; [0]; [2,23E-308 a 1,79E+308] real Ocupa 4 bytes, representando valores: [-3,40E+38 a -1,18E-38]; [0]; [1,18E-38 a 3,40E+38] Tipos de dados do sql server 12 Data e hora Date Define uma data no SQL Server. Ocupa 3 bytes. Formato da literal: AAAA-MM-DD Intervalo: 000-01-01 a 9999-12-31 datetime2 Define uma data combinada com uma hora do dia que se baseia em um período de 24 horas. Ocupa 6 bytes Formato da literal: YYYY-MM-DD hh:mm:ss[segundos fracionários] Intervalo: 0001-01-01 a 9999-12-31 datetime Define uma data combinada com uma hora do dia que inclui frações de segundos e se baseia em um período de 24 horas. Ocupa 8 bytes Intervalo de datas: Janeiro 1, 1753, a dezembro 31, 9999 Intervalo de horas: 00:00:00 a 23:59:59.997 datetimeoffset Define a data combinada com uma hora de um dia que possui reconhecimento de fuso horário e é baseada em um relógio de 24 horas. Ocupa 10 bytes. Formato da literal: AAAA-MM-DD hh:mm:ss[. nnnnnnn] [{+|-}hh:mm] Intervalo de datas: 0001-01-01 a 9999-12-31 Intervalo de horas: 00:00:00 a 23:59:59.9999999 smalldatetime Define uma data que é combinada com uma hora do dia. Ocupa 4 bytes. Intervalo de datas: 1900-01-01 a 2079-06-06 Intervalo de horas: 00:00:00 a 23:59:59 time Define uma hora de um dia. A hora se encontra sem reconhecimento de fuso horário e se baseia em um relógio de 24 horas. Formato da literal: hh:mm:ss[. nnnnnnn] Intervalo: 00:00:00.0000000 a 23:59:59.9999999 Ocupa 5 bytes Tipos de dados do sql server 13 Cadeias de caracteres char Dados de cadeia de caracteres não Unicode de comprimento fixo. Uso: char(n), onde n é o tamanho da cadeia e pode ser de 0 a 8.000. Número de bytes ocupados é igual a n. text Dados não Unicode de comprimento variável na página de código do servidor e com um comprimento máximo de cadeia de caracteres de 2^31-1 (2.147.483.647). varchar Dados de cadeia de caracteres não Unicode de comprimento variável. Uso: char(n), onde n é o tamanho máximo da cadeia e pode ser de 0 a 8.000. Número de bytes ocupados é igual a n. Cadeias de caracteres Unicode nchar Dados de cadeia de caracteres Unicode de comprimento fixo. Uso: nchar(n), onde n é o tamanho da cadeia e pode ser de 0 a 4.000. Número de bytes ocupados é igual a 2×n. ntext Dados Unicode de comprimento variável com um comprimento máximo de cadeia de caracteres de 2^30 - 1 (1.073.741.823) bytes. O tamanho de armazenamento, em bytes, é duas vezes o comprimento da cadeia de caracteres inserido. nvarchar Dados de cadeia de caracteres Unicode de comprimento variável. Uso: nchar(n), onde n é o tamanho máximo da cadeia e pode ser de 0 a 4.000. Número de bytes ocupados é igual a 2×n. Tipos de dados do sql server 14 Cadeias de caracteres binárias binary Dados binários de comprimento fixo com um comprimento de n bytes, em que n é um valor de 1 a 8.000. O tamanho de armazenamento é n bytes. Uso: binary(n) image Dados binários do comprimento variável de 0 a 2 3^1-1 (2.147.483.647) bytes. varbinary Dados binários de comprimento variável. n pode ser um valor de 1 a 8.000. Uso: varbinary(n) Outros tipos de dados cursor Um tipo de dados para parâmetros OUTPUT de variáveis ou procedimento armazenado que contém uma referência a um cursor. Serve para manipulações do banco de dados. hierarchyid hierarchyid é um tipo de dados de tamanho variável. Usa-se hierarchyid para representar posição em uma hierarquia, e assim é possível fazer uma relação hierárquica entre as entidades no BD. sql_variant Um tipo de dados que armazena valores de vários tipos de dados que o SQL Server. Ele é como um coringa para dados. table É um tipo de dados especial que pode ser usado para armazenar um conjunto de resultados para processamento posterior. table é utilizada principalmente para o armazenamento temporário de um conjunto de linhas retornadas como o conjunto de resultados de uma função com valor de tabela. timestamp É um tipo de dados que expõe números binários exclusivos, gerados automaticamente, em um banco de dados. Serve paracontrolar versões através de um tempo relativo. uniqueidentifier É um Identificador Único Global (GUID - Globally Unique IDentifier) de 16 bytes. Um número único sequencialmente gerado. xml É o tipo de dados que armazena dados XML. Tipos espaciais Serve para armazenar coordenadas geográficas e geometrias formas por elas. Desenvolvimento de software Fabiano Gonçalves dos Santos Atividade 7 15 Questão de concurso O SQL Server possui uma linguagem relacional denominada Transact-SQL, que é um dialeto da linguagem SQL. • Certo • Errado 16 Ano: 2010 Banca: CESPE Órgão: Banco da Amazônia Prova: Técnico Científico - Tecnologia da Informação Questão de concurso O SQL Server possui uma linguagem relacional denominada Transact-SQL, que é um dialeto da linguagem SQL. • Certo • Errado 17 Ano: 2010 Banca: CESPE Órgão: Banco da Amazônia Prova: Técnico Científico - Tecnologia da Informação Questão de concurso O SQL Server oferece escalabilidade, mas não pode implementar o data warehouse. Certo Errado 18 Ano: 2010 Banca: CESPE Órgão: Banco da Amazônia Prova: Técnico Científico - Tecnologia da Informação Questão de concurso O SQL Server oferece escalabilidade, mas não pode implementar o data warehouse. Certo Errado 19 Ano: 2010 Banca: CESPE Órgão: Banco da Amazônia Prova: Técnico Científico - Tecnologia da Informação Questão de concurso O Microsoft SQL Server 2012 provê ferramentas específicas para Business Intelligence. Uma dessas ferramentas possibilita a apresentação e visualização de dados (View), enquanto a outra auxilia o usuário no acesso aos dados que são exibidos (Model). Essas ferramentas são chamadas, respectivamente, a) SQL Viewer - Data Miner b) Data Explorer - Data Acquirer c) Power View - Power Pivot. d) MS Exhibition - SQL Query+ e) Data Show - Data Miner 20 Ano: 2013 Banca: FCC Órgão: TRT - 15ª Região Prova: Analista Judiciário - Tecnologia da Informação Questão de concurso O Microsoft SQL Server 2012 provê ferramentas específicas para Business Intelligence. Uma dessas ferramentas possibilita a apresentação e visualização de dados (View), enquanto a outra auxilia o usuário no acesso aos dados que são exibidos (Model). Essas ferramentas são chamadas, respectivamente, a) SQL Viewer - Data Miner b) Data Explorer - Data Acquirer c) Power View - Power Pivot. d) MS Exhibition - SQL Query+ e) Data Show - Data Miner 21 Ano: 2013 Banca: FCC Órgão: TRT - 15ª Região Prova: Analista Judiciário - Tecnologia da Informação Questão de concurso Consultas podem ser criadas no SQL Server 2008, com maior produtividade, baseadas em um modelo de entidades de dados, ou na linguagem de programação em vez de SQL, por meio da linguagem a) SSIS. b) LINQ. c) determinar os atributos da tabela. d) Microsoft Visual C#. e) Microsoft Visual Basic. 22 Ano: 2010 Banca: FCC Órgão: DPE-SP Prova: Agente de Defensoria - Administrador de Banco de Dados Questão de concurso Consultas podem ser criadas no SQL Server 2008, com maior produtividade, baseadas em um modelo de entidades de dados, ou na linguagem de programação em vez de SQL, por meio da linguagem a) SSIS. b) LINQ. c) determinar os atributos da tabela. d) Microsoft Visual C#. e) Microsoft Visual Basic. 23 Ano: 2010 Banca: FCC Órgão: DPE-SP Prova: Agente de Defensoria - Administrador de Banco de Dados
Compartilhar