
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):
- Oracle;
- SQL SERVER;
- 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
Comentários