Aqui vai mais uma continuidade de meu Sistema Estoque.
Um sistema tem necessidades de salvar, alterar, editar, excluir, inserir dados e em cima desse conceito criei o banco de dados de meu sistema.
Utilizei como ferramenta para criação da BD o INTERBASE.
- Script SQL
Esse é o Script de meu sistema, ao qual conectarei mais tarde com algumas janelas novas:
1 - CRIANDO O BANCO DE DADOS
SET SQL DIALECT 3;
CREATE DATABASE 'C:\Estoque\dado\ESTOQUE.GDB' PAGE_SIZE 4096
DECLARE EXTERNAL FUNCTION RDB$GET_CONTEXT
VARCHAR(80) CHARACTER SET NONE, VARCHAR(80) CHARACTER SET NONE
RETURNS VARCHAR(255) CHARACTER SET NONE FREE_IT
ENTRY_POINT 'get_context' MODULE_NAME 'system_module';
DECLARE EXTERNAL FUNCTION RDB$SET_CONTEXT
VARCHAR(80) CHARACTER SET NONE, VARCHAR(80) CHARACTER SET NONE, VARCHAR(255) CHARACTER SET NONE
RETURNS INTEGER BY VALUE
ENTRY_POINT 'set_context' MODULE_NAME 'system_module';
2 - TABELA BAIRRO
CREATE TABLE "BAIRRO"
(
"BAIRRO_CODIGO" INTEGER NOT NULL,
"BAIRRO_NOME" VARCHAR(40) NOT NULL,
CONSTRAINT "BAIRRO_PK" PRIMARY KEY ("BAIRRO_CODIGO")
);
3 - TABELA CARGO
CREATE TABLE "CARGO"
(
"CARGO_CODIGO" INTEGER NOT NULL,
"CARGO_NOME" VARCHAR(40),
CONSTRAINT "CARGO_PK" PRIMARY KEY ("CARGO_CODIGO")
);
4 - TABELA CLIENTE
CREATE TABLE "CLIENTE"
(
"CLI_CODIGO" INTEGER NOT NULL,
"CLI_NOME" VARCHAR(40) NOT NULL,
"CLI_LOGRADOURO" INTEGER NOT NULL,
"CLI_NUMERO" VARCHAR(10) NOT NULL,
"CLI_BAIRRO" INTEGER NOT NULL,
"CLI_CIDADE" INTEGER NOT NULL,
"CLI_CEP" VARCHAR(10),
"CLI_DATANASC" TIMESTAMP NOT NULL,
"CLI_DATACAD" TIMESTAMP NOT NULL,
"CLI_COMPLEMENTO" VARCHAR(10),
"CLI_FOTO" VARCHAR(40),
"CLI_CPF" VARCHAR(14),
"CLI_RG" VARCHAR(20),
"CLI_FONERES" VARCHAR(16),
"CLI_FONECOM" VARCHAR(16),
"CLI_FONECEL" VARCHAR(16),
"CLI_OBS" VARCHAR(40),
"PES_EMAIL" VARCHAR(50),
CONSTRAINT "CLIENTE_PK" PRIMARY KEY ("CLI_CODIGO")
);
5 - TABELA FUNCIONARIO
CREATE TABLE "FUNCIONARIO"
(
"FUNC_CODIGO" INTEGER NOT NULL,
"FUNC_NOME" VARCHAR(40) NOT NULL,
"FUNC_BAIRRO" INTEGER NOT NULL,
"FUNC_CIDADE" INTEGER NOT NULL,
"FUNC_CARGO" INTEGER NOT NULL,
"FUNC_APELIDO" VARCHAR(15),
"FUNC_ENDERECO" INTEGER NOT NULL,
"FUNC_COMPLEMENTO" VARCHAR(10),
"FUNC_CPF" VARCHAR(14),
"FUNC_RG" VARCHAR(20),
"FUNC_FONERES" VARCHAR(16),
"FUNC_FONECEL" VARCHAR(16),
"FUNC_OBS" VARCHAR(40),
"FUNC_DATAADM" TIMESTAMP,
"FUNC_DATANASC" TIMESTAMP,
"FUNC_NUM" VARCHAR(40),
"FUNC_EMAIL" VARCHAR(40),
"FUNC_CEP" VARCHAR(10),
"FUNC_UF" VARCHAR(2),
"FUNC_FOTO" VARCHAR(60),
CONSTRAINT "FUNC_PK" PRIMARY KEY ("FUNC_CODIGO")
);
6 - TABELA LOGRADOURO
CREATE TABLE "LOGRADOURO"
(
"LOG_CODIGO" INTEGER NOT NULL,
"LOG_LOGRADOURO" VARCHAR(40) NOT NULL,
CONSTRAINT "LOG_PK" PRIMARY KEY ("LOG_CODIGO")
);
7 - TABELA CIDADE
CREATE TABLE "TBL_CIDADE"
(
"CID_CODIGO" INTEGER NOT NULL,
"CID_NOME" VARCHAR(30) NOT NULL,
"CID_UF" VARCHAR(2) NOT NULL,
CONSTRAINT "CIDADE_PK" PRIMARY KEY ("CID_CODIGO")
);
8 - TABELA FUNCIONARIO
CREATE TABLE "TBL_FUNC"
(
"FUNC_CODIGO" INTEGER NOT NULL,
"FUNC_NOME" VARCHAR(40) NOT NULL,
"FUNC_BAIRRO" VARCHAR(20),
"FUNC_CIDADE" INTEGER NOT NULL,
"FUNC_CARGO" VARCHAR(20),
"FUNC_ENDERECO" VARCHAR(40) NOT NULL,
"FUNC_CPF" VARCHAR(14),
"FUNC_RG" VARCHAR(20),
"FUNC_FONERES" VARCHAR(16),
"FUNC_DATAADM" TIMESTAMP,
"FUNC_DATANASC" TIMESTAMP,
CONSTRAINT "FUNCIONARIO_PK" PRIMARY KEY ("FUNC_CODIGO")
);
9 - CRIANDO OS INDICES (Geralmente para codigo e nome)
CREATE INDEX "IND_COD_BAIRRO" ON "BAIRRO"("BAIRRO_CODIGO");
CREATE INDEX "IND_NOME_BAIRRO" ON "BAIRRO"("BAIRRO_NOME");
CREATE INDEX "IND_COD_CARGO" ON "CARGO"("CARGO_CODIGO");
CREATE INDEX "IND_NOME_CARGO" ON "CARGO"("CARGO_NOME");
CREATE INDEX "IND_COD_cliente" ON "CLIENTE"("CLI_CODIGO");
CREATE INDEX "IND_NOME_cliente" ON "CLIENTE"("CLI_NOME");
CREATE INDEX "IND_COD_FUNC" ON "FUNCIONARIO"("FUNC_CODIGO");
CREATE INDEX "IND_NOME_FUNC" ON "FUNCIONARIO"("FUNC_NOME");
CREATE INDEX "IND_COD_LOG" ON "LOGRADOURO"("LOG_CODIGO");
CREATE INDEX "IND_NOME_LOG" ON "LOGRADOURO"("LOG_LOGRADOURO");
CREATE INDEX "IND_COD_CIDADE" ON "TBL_CIDADE"("CID_CODIGO");
CREATE INDEX "IND_NOME_CIDADE" ON "TBL_CIDADE"("CID_NOME");
ALTER TABLE "CLIENTE" ADD CONSTRAINT "CLIENTE_BAIRRO" FOREIGN KEY ("CLI_BAIRRO") REFERENCES BAIRRO ("BAIRRO_CODIGO");
ALTER TABLE "CLIENTE" ADD CONSTRAINT "CLIENTE_CIDADE" FOREIGN KEY ("CLI_CIDADE") REFERENCES TBL_CIDADE ("CID_CODIGO");
ALTER TABLE "CLIENTE" ADD CONSTRAINT "CLIENTE_LOGRADOURO" FOREIGN KEY ("CLI_LOGRADOURO") REFERENCES LOGRADOURO ("LOG_CODIGO");
ALTER TABLE "FUNCIONARIO" ADD CONSTRAINT "FUNC_BAIRRO" FOREIGN KEY ("FUNC_BAIRRO") REFERENCES BAIRRO ("BAIRRO_CODIGO") ON UPDATE NO ACTION ON DELETE NO ACTION;
ALTER TABLE "FUNCIONARIO" ADD CONSTRAINT "FUNC_CARGO" FOREIGN KEY ("FUNC_CARGO") REFERENCES CARGO ("CARGO_CODIGO") ON UPDATE NO ACTION ON DELETE NO ACTION;
ALTER TABLE "FUNCIONARIO" ADD CONSTRAINT "FUNC_CIDADE" FOREIGN KEY ("FUNC_CIDADE") REFERENCES TBL_CIDADE ("CID_CODIGO") ON UPDATE NO ACTION ON DELETE NO ACTION;
ALTER TABLE "FUNCIONARIO" ADD CONSTRAINT "FUNC_ENDERECO" FOREIGN KEY ("FUNC_ENDERECO") REFERENCES LOGRADOURO ("LOG_CODIGO") ON UPDATE NO ACTION ON DELETE NO ACTION;
10 - CRIANDO A GENERATOR PARA TRIGGER
CREATE GENERATOR "GEN_COD_BAIRRO";
CREATE GENERATOR "GEN_COD_CIDADE";
CREATE GENERATOR "GEN_COD_LOG";
SET TERM ^ ;
11 - CRIANDO TRIGGER (Para gerar codigo automatico)
CREATE TRIGGER "GERA_COD_BAIRRO" FOR "BAIRRO"
ACTIVE BEFORE INSERT POSITION 0
as
begin
new.bairro_codigo = gen_id (gen_cod_bairro,1);
end
^
CREATE TRIGGER "GERA_COD_LOG" FOR "LOGRADOURO"
ACTIVE BEFORE INSERT POSITION 0
as
begin
new.log_codigo = gen_id (gen_cod_log,1);
end
^
CREATE TRIGGER "GERA_COD_CIDADE" FOR "TBL_CIDADE"
ACTIVE BEFORE INSERT POSITION 0
AS
BEGIN
NEW.cid_codigo = gen_id (gen_cod_cidade,1);
END
^
COMMIT WORK ^
SET TERM ;^
Pessoal este é um exemplo de banco de dados simples, não há nenhuma consulta nele mesmo até que usamos nossas consultas em Query do próprio sistema.
Este código mostra:
- A criação do Banco de Dados (CREATE DATABASE)
- A criação de Tabelas (CREATE TABLE)
- A criação de Indices (CREATE INDEX)
- A criação de Generator (CREATE GENERATOR)
- A criação de Trigger ou gatilhos (CREATE TRIGGER)
Espero que tenham gostado.
Qualquer duvida entre em contato comigo através do e-mail.
"ettore.state = 'Em busca de um estágio'"
- DUVIDAS e SUGESTÕES - ettorefrancobr@gmail.com
quarta-feira, 26 de maio de 2010
terça-feira, 25 de maio de 2010
SUGEST 2010 - Feira de Ciência
Saudações!
Foi iniciado ontem (25/05/2010), a Feira de Ciências da Universidade Amparense UNIFIA e foi finalizada hoje (26/05/2010).

Cada curso posuia tema e cada um era dividido por grupos. Em nosso curso, o tema foi "Pragas Virtuais" e meu grupo ficou encarregado a parte de Anti-vírus.
Como estudantes da area de Analise e Desenvolvimento de Sistemas, desenvolvemos alguns sistemas para nossa apresentação.
Sistema de Pesquisa Anti-vírus (Éttore Franco)
Eu fiquei encarregado de desenvolver um Sistema de Pesquisa, no qual o visitante coloca seu nome, seu e-mail e qual Anti-vírus utiliza.

Resultado final: através do Gráfico analisamos os Anti-vírus mais utilizados durante nossa pesquisa.
Sobre o programa:
- Utilizei um banco de dados para o cadastro do nome, e-mail e o Anti-Vírus utilizado. Cada pessoa tinha seu codigo que era gerado automaticamente através de uma Trigger. Usei o componente DBChart para esboçar o gráfico e liguei o banco com o DBChart!
Sistema Estatísticas Anti-Vírus(Éttore Franco)
O Sistema consiste em trazer dados estatisticos de alguns Anti-vírus. Com isso, o vizitante tirava dúvidas de qual o melhor, qual demora mais para realizar o 'SCAN' e etc.

Ao clicar em no botão Gera_Gráfico, cria-se o gráfico estatistico desejado!

- O sistema é bem simples, não há nenhuma ligação com banco de dados e o gráfico é do tipo JPEG. (O sistema foi criado as preças 20 minutos, pois não tivemos tempo para Desenvolve-lo).
Sistema Anti-vírus Freeware e Shareware (Renan C. Fuentes)
O sistema consiste em trazer ao vizitante quais as vantagens e desvantagens dos 5 top Anti-vírus Freeware e Shareware.

O Sistema é simples e não há ligação com Banco de Dados. A lógica dele consiste ao usuario facilididas a comparação entre anti-vírus.
Disponibilizamos a voces alguns links para downloads de nossos sistemas e a apostila sobre anti-vírus:
Sistema de Pesquisa Anti-vírus (Éttore Franco)
Sistema de Estatisticas Anti-Vírus (Éttore Franco)
Sistema Vantagens e Desvantagens Anti-vírus (Renan C. Fuentes - email: renan_c_fuentes@hotmail.com).
Apostila Sobre Top Anti-vírus
Espero que tenham gostado de nossa apresentação.
"ettore.state = 'Em busca de um estágio'"
- DUVIDAS e SUGESTÕES - ettorefrancobr@gmail.com
Foi iniciado ontem (25/05/2010), a Feira de Ciências da Universidade Amparense UNIFIA e foi finalizada hoje (26/05/2010).
Cada curso posuia tema e cada um era dividido por grupos. Em nosso curso, o tema foi "Pragas Virtuais" e meu grupo ficou encarregado a parte de Anti-vírus.
Como estudantes da area de Analise e Desenvolvimento de Sistemas, desenvolvemos alguns sistemas para nossa apresentação.
Sistema de Pesquisa Anti-vírus (Éttore Franco)
Eu fiquei encarregado de desenvolver um Sistema de Pesquisa, no qual o visitante coloca seu nome, seu e-mail e qual Anti-vírus utiliza.
Resultado final: através do Gráfico analisamos os Anti-vírus mais utilizados durante nossa pesquisa.
Sobre o programa:
- Utilizei um banco de dados para o cadastro do nome, e-mail e o Anti-Vírus utilizado. Cada pessoa tinha seu codigo que era gerado automaticamente através de uma Trigger. Usei o componente DBChart para esboçar o gráfico e liguei o banco com o DBChart!
Sistema Estatísticas Anti-Vírus(Éttore Franco)
O Sistema consiste em trazer dados estatisticos de alguns Anti-vírus. Com isso, o vizitante tirava dúvidas de qual o melhor, qual demora mais para realizar o 'SCAN' e etc.
Ao clicar em no botão Gera_Gráfico, cria-se o gráfico estatistico desejado!
- O sistema é bem simples, não há nenhuma ligação com banco de dados e o gráfico é do tipo JPEG. (O sistema foi criado as preças 20 minutos, pois não tivemos tempo para Desenvolve-lo).
Sistema Anti-vírus Freeware e Shareware (Renan C. Fuentes)
O sistema consiste em trazer ao vizitante quais as vantagens e desvantagens dos 5 top Anti-vírus Freeware e Shareware.
O Sistema é simples e não há ligação com Banco de Dados. A lógica dele consiste ao usuario facilididas a comparação entre anti-vírus.
Disponibilizamos a voces alguns links para downloads de nossos sistemas e a apostila sobre anti-vírus:
Sistema de Pesquisa Anti-vírus (Éttore Franco)
Sistema de Estatisticas Anti-Vírus (Éttore Franco)
Sistema Vantagens e Desvantagens Anti-vírus (Renan C. Fuentes - email: renan_c_fuentes@hotmail.com).
Apostila Sobre Top Anti-vírus
Espero que tenham gostado de nossa apresentação.
"ettore.state = 'Em busca de um estágio'"
- DUVIDAS e SUGESTÕES - ettorefrancobr@gmail.com
Assinar:
Postagens (Atom)