Create Database e Create Table

23 01 2009

estrutura de dados (cubos)

Com base no MER deste post aqui vamos criar nosso banco de dados e nossas tabelas usando o modelo de linguagem ANSI-92 SQL que funciona em qualquer banco de dados relacional.

 

 

 

1º Passo

Escolher seu banco de dados, lembrando que os melhores são (em ordem e na minha opinião):

  1. Oracle;
  2. SQL SERVER;
  3. My SQL

Faça o download da versão express de algum banco de dados acima, clicando em seu respectivo nome para prosseguir.

2º Passo

Criar o banco de dados e suas tabelas usando a linguagem ANSI-92 SQL, que ficaria assim:

1.   Criar o banco de dados:

Sintaxe do comando CREATE DATABASE:

Criando o banco de dados:

CREATE DATABASE NOME_DO_BANCO 

CREATE DATABASE CONTROLE_FINANCEIRO;

 

2.   Criar as tabelas:

Sintaxe do comando CREATE TABLE:

CREATE TABLE NOME_DA_TABELA
(
NOME_DA_VARIAVEL TIPO,
NOME_DA_VARIAVEL TIPO,
 
CHAVE_PRIMARIA(NOME_DO_CAMPO),
CHAVE_ESTRANGEIRA(NOME_DO_CAMPO) REFERENCIA NOME_TABELA_DE_REFERENCIA NOME_DA_VARIAVEL)
);

Criando as tabelas:

*OBS: Para o banco de dados MySQL é necessário retirar as aspas de todos os nomes de tabelas, o código SQL abaixo está apropriado para o banco de dados SQL Server.

CREATE TABLE “USER”
(
USER_ID INT NOT NULL,
EMAIL VARCHAR(45),
PASSWORD VARCHAR(45),

PRIMARY KEY(USER_ID)
);

CREATE TABLE “ACCOUNT”
(
ACCOUNT_ID INT NOT NULL,
NAME VARCHAR(45) NOT NULL,
CURRENT_BALANCE BIGINT,
USER_ID INT NOT NULL,

PRIMARY KEY(ACCOUNT_ID),
FOREIGN KEY(USER_ID) REFERENCES “USER”(USER_ID)
);

CREATE TABLE “CATEGORY”
(
CATEGORY_ID INT NOT NULL,
NAME VARCHAR(250) NOT NULL,
TYPE VARCHAR(10) NOT NULL,
USER_ID INT NOT NULL,

PRIMARY KEY(CATEGORY_ID),
FOREIGN KEY(USER_ID) REFERENCES “USER”(USER_ID)
);

CREATE TABLE “TRANSACTION”
(
TRANSACTION_ID INT NOT NULL,
AMOUNT BIGINT NOT NULL,
DATE DATETIME NOT NULL,
DESCRIPTION VARCHAR(4000),
ACCOUNT_ID INT NOT NULL,
TYPE VARCHAR(10) NOT NULL,
CATEGORY_ID INT,
USER_ID INT NOT NULL,
 
PRIMARY KEY(TRANSACTION_ID),
FOREIGN KEY(ACCOUNT_ID) REFERENCES “ACCOUNT”(ACCOUNT_ID),
FOREIGN KEY(CATEGORY_ID) REFERENCES “CATEGORY”(CATEGORY_ID)
); 

Por hora é só, em outro post explicarei como se insere registros nas tabelas e como fazemos para consulta-los.

 

UltraG 





Banco de Dados Relacionais e o MER

2 01 2009

estrutura de dados (cubos)

Está é uma das principais matérias para estudantes de bsi. No mundo em que vivemos, armazenar as informações e conhecimentos para ganhar dinheiro e vantagem competitiva no mercado requer muito esforço no gerenciamento do uso da TI. Armazenando os dados corretos faz com que sua empresa saia na frente na hora de tomar decisões importantes. Os bancos de dados são o coração das grandes organizações e do funcionamento da sociedade moderna, pois é impossível guardar todas as informações geradas por estas em papel como antigamente.

Um banco de dados é um conjunto de registros dentro de uma estrutura que possibilita a reorganização dos registros para produção de informação. Vamos tratar de banco de dados relacionais que tratam os registros para produzir resultados em tabelas. Os banco de dados relacionais são compostos por tabelas que se relacionam entre si.

1º Passo

Abstrair um problema real que necessite do uso de banco de dados e através deste fazer o mapeamento do banco construindo um MER (modelo-entidade-relacionamento).

Leia tudo sobre o MER clicando aqui.

Real case:

Uma pessoa precisa organizar suas finanças afim de descobrir para onde vai todo seu dinheiro. A pessoa anota os gastos no papel que contém o valor, data, descrição do gasto, tipo do gasto e em qual categoria se enquadra. Esta transação anotada envolve uma conta de banco que possui um nome, balanço e usuário. Para os usuários temos email e password e para as categorias deseja-se saber seu nome, tipo e usuário. No final do mês esta pessoa consegue observar onde foram feitos os gastos analisando os gastos por categorias que mostra o quanto foi gasto em cada categoria. 

2º Passo

O MER desse cenário ficaria assim:

 

mer2 

 

Por hora é só, em outro post explicarei como construir seu banco de dados e suas tabelas.

 

UltraG