Arquivo mensal 09/10/2018

porPaulo Henrique Corrêa Cardoso

Criando o nosso primeiro Banco de Dados

Fala pessoal, tudo bem ??

Hoje vamos começar a construir o nosso primeiro banco de dados, utilizando o Microsoft SQL Server e a linguagem SQL.

Para isso, vamos entender um conceito bem bacana que utilizaremos no nosso exemplo de hoje.

O nome é Filegroup

Para pensarmos em um Filegroup de uma forma didática, podemos imagina-lo como um conjunto de pastas, onde cada pasta seria um Filegroup.

Em cada um desses Filesgroup’s possuímos documentos muito importantes que são frequentemente requisitados…

Se imaginarmos que duas pessoas precisem de documentos que estão em uma única pasta, será necessário que uma das pessoas fique esperando a outra terminar para utilizar a pasta e o documento.

No caso do banco de dados é parecido porem teremos problemas quando houver um grande numero de acessos a tabelas que estão no mesmo Filegroup, gerando uma lentidão e uma má performance do banco de dados.

Para que isso seja evitado, podemos dividir as tabelas mais acessadas em Filegroup’s diferentes, o que evitaria essa concorrência no acesso aos dados.

Chegou a hora de por a mão na massa !!!!!

Para a criação do nosso primeiro banco de dados eu vou utilizar a plataforma do Microsoft SQL Server

Nele vamos clicar no botão New Query ou Nova Consulta.

Neste momento teremos nosso espaço de edição, dentro da ferramenta da Microsoft.

E agora começamos nossos comandos.

As clausulas iniciais do nosso comando de criação é o CREATE DATABASE com o nome do nosso banco de dados na sequencia.

Logo em seguida definimos o Filegroup principal utilizando a clausula ON PRIMARY a mesma recebera as informações referentes ao Filegroup primário.

Na clausula NAME definimos o nome que nosso Filegroup vai receber .

Já na clausula FILENAME definimos o caminho e o nome do arquivo físico referente ao Filegroup lembrando que para múltiplos Filegroup’s é interessante dividir em discos diferentes para melhorar a performance de acesso as tabelas que serão divididas entre eles.

Nas clausulas SIZE e MAXSIZE definimos os tamanhos iniciais e maximos que nossos Filegroup’s poderão atingir. Se você deseja ter um banco de dados escalável e sem problema de alocação de espaço no HD pode definir o tamanho no MAXSIZE como UNLIMITED ou seja Ilimitado.

A clausula FILEGROWTH define o percentual ou tamanho de crescimento após o tamanho máximo do banco atingido atingido, por exemplo ele cresce de 20% em 20%.

Para criar os demais Filegroup’s devemos utilizar a clausula FILEGROUP seguida do nome do Filegroup, lembrando que para os Filegroup’s secundários devemos utilizar utilizar a extensão “.NDF” que é referente a SecoNdary Data Files.

Por último temos o Filegroup de log, este grupo de arquivo armazenará os log’s de transações e o mesmo pode ser utilizado em eventuais recuperações do banco de dados.

Para criar este Filegroup utilizamos as clausulas LOG ON , lembrando que para o Filegroup de log devemos utilizar utilizar a extensão “.LDF” que é referente a Log Data File.

Abaixo temos um exemplo de criação de banco de dados, utilizando os comandos a cima.

CREATE DATABASE MERCADOPH  
ON PRIMARY(	
  NAME =	N'MERCADOPH', FILENAME = N'D:\BD\MERCADOPH.mdf' , SIZE = 6000KB , MAXSIZE = UNLIMITED, FILEGROWTH = 20%
),

FILEGROUP MERCADOPHSEC(
  NAME = N'MERCADOPH_SEC', FILENAME = N'F:\BD\MERCADOPH_SEC.ndf' , SIZE = 6000KB ,MAXSIZE = UNLIMITED, FILEGROWTH = 1024KB 
)

 LOG ON (
  NAME = N'MERCADOPH_LOG', FILENAME = N'D:\BD\MERCADOPH_log.ldf' , SIZE = 1024KB , MAXSIZE = 2048GB , FILEGROWTH = 10%
)
GO

Pronto, com isso criamos nosso primeiro banco de dados.

Fiquem de olho porque vem mais coisa boa por ia.

Até a próxima !!!!

porPaulo Henrique Corrêa Cardoso

O que é Banco de Dados e SQL ??? Vamos do inicio…

 

Oi pessoal…

Hoje vou escrever aqui sobre o que é o tão poderoso e incrível SQL. 

Bom na verdade SQL é uma linguagem, que significa Structured Query Language, ou Linguagem de Consulta Estruturada.

 

E para que serve esse negócio ???

A mais simples das explicações é : “Para você conseguir consultar e manipular dados contidos em um banco de dados…”

 

E o que é um banco de dados ?

Na verdade podemos imaginar um banco de dados como se fosse um banco onde guardamos nosso dinheiro.

Só que no lugar do dinheiro temos os dados que queremos armazenar.

E o mantemos seguros para serem acessados no momento em que precisarmos deles.

 

O Banco de dados consiste de alguns elementos principais:

  • Tabelas
  • Registros
  • Campos
  • Dados
  • Índices
  • Chaves

Nas tabelas armazenaremos nossos registros, onde cada registro contem um conjunto de campos com seus respectivos dados, e os índices servem para conseguirmos encontrar os registros de uma forma mais rápida dentro da tabela.

Já as chaves servem para realizar junções entre tabelas, para assim conseguirmos cruzar informações.

Levando para a nossa analogia com o Banco de dinheiro :

  • Nossas tabelas seriam nossas contas bancarias.
  • Os registros seriam nossas transações.
  • Os campos seriam os locais onde guardamos nossas informações que temos nas transações, como por exemplo a data, o valor, uma descrição, etc…
  • Os dados seriam as informações de data da transação, o valor da transação, a descrição e etc…
  • Os índices seriam a forma de organizarmos e pesquisarmos essas transações, como por exemplo utilizar a data para buscar as transações.
  • E a chave seria por exemplo o código da transação.

Pode ser uma analogia simples mas desta forma já começamos a pensar de uma forma estruturada de como seria um banco de dados.

 

Existem vários tipos de bancos de dados no mercado, e cada um com suas características especificas.

Nos meus post’s vou utilizar mais o Microsoft SQL Server, porem como meu conteúdo é SQL a maioria das coisas que vou falar aqui poderão ser aplicadas em qualquer banco.

Agora que já temos o conceito básico do que é um Banco de Dados, vamos conhecer um pouquinho da divisão do que é a Linguagem SQL.

Apesar de ser uma única linguagem, ela é dividida em 3 partes principais(existem mais 2 partes que explicarei com mais calma em outro post):

DDL – Data Definition Language ou Linguagem de Definição de Dados: Apesar do nome esta parte da linguagem não tem interação com os dados e sim com a estrutura do banco de dados, como por exemplo comandos para criação, alteração e exclusão de tabelas, campos e índices.

Exemplos de comandos: CREATE, o ALTER e o DROP.

DML – Data Manipulation Language, ou Linguagem de Manipulação de Dados: Esta sim é a parte da linguagem que possui os comandos para manipulação dos dados, como por exemplo inclusão, alteração ou exclusão de dados.

Exemplos de comandos: INSERT, UPDATE e DELETE.

DQLData Query Language, ou Linguagem de Consulta de Dados: Esta parte da linguagem se destina a consulta de dados e é a que vamos utilizar a maior parte do tempo, mas não quer dizer que você só precisa conhecer ela, ate porque se não conhecer as outras não vai precisar utilizar essa.

Exemplos de comandos: SELECT, FROM, WHERE, ORDER BY e GROUP BY.

Os junção de vários destes comandos é chamada de Query, que serão utilizados para realizarmos todas as nossas manipulações dentro dos bancos de dados.

Nos próximos post’s vou começar a entrar melhor na linguagem SQL na prática e vamos fazer exemplos juntos.

Fiquem de olho no canal para alguns videos sobre os assuntos.

Espero que tenham gostado e até a próxima !!!