Banco de dados
Por: Marc_Toninho • 10/5/2015 • Trabalho acadêmico • 329 Palavras (2 Páginas) • 226 Visualizações
#banco de dados
create database ADS2_BIBLIOTECA;
#Tabela
use ADS2_BIBLIOTECA;
create table usuarios(
id int unsigned not null auto_increment,
nome varchar(15) not null,
sobrenome varchar(15) not null,
endereco varchar(45) not null,
cidade varchar(45) not null,
sigla_estado varchar(2) not null,
telefone varchar(11),
tipo_usuario varchar(15) not null,
constraint pk_usuarios primary key(id),
constraint fk_estados foreign key(sigla_estado) references estados(sigla_estado)
);
create table livros(
id int unsigned not null auto_increment,
usuario_id int unsigned default null,
titulo varchar(45),
ano_publicacao int unsigned not null,
numero_edicao int unsigned not null,
paginas int unsigned not null,
categoria varchar(12) not null,
preco double not null default 0,
constraint pk_livros primary key(id),
constraint fk_usuarios foreign key(usuario_id) references usuarios(id)
);
create table estados(
sigla_estado varchar(2) not null,
nome_estado varchar(25) not null,
constraint pk_estados primary key(sigla_estado)
);
#Inserir campos
insert into usuarios(id, nome, sobrenome, endereco, cidade, sigla_estado, telefone, tipo_usuario)
values(1, 'nome1', 'sobrenome1', 'endereco1', 'cidade1', 'rs', '1111-1111', 'professor');
insert into usuarios(id, nome, sobrenome, endereco, cidade, sigla_estado, telefone, tipo_usuario)
values(null, 'nome2', 'sobrenome2', 'endereco2', 'cidade2', 'sc', '2222-2222', 'aluno');
insert into usuarios(id, nome, sobrenome, endereco, cidade, sigla_estado, telefone, tipo_usuario)
values(null, 'nome3', 'sobrenome3', 'endereco3', 'cidade3', 'sp', '3333-3333', 'funcionario');
insert into usuarios(id, nome, sobrenome, endereco, cidade, sigla_estado, telefone, tipo_usuario)
values(null, 'nome4', 'sobrenome4', 'endereco4', 'cidade4', 'sc', '4444-4444', 'professor');
insert into usuarios(id, nome, sobrenome, endereco, cidade, sigla_estado, telefone, tipo_usuario)
values(null, 'nome5', 'sobrenome5', 'endereco5', 'cidade5', 'rj', '5555-5555', 'aluno');
insert into livros(id, usuario_id, titulo, ano_publicacao, numero_edicao, paginas, categoria, preco)
values(1, 5, 'titulo1', '2001', 1, 111, 'Romance', 100);
insert into livros(id, usuario_id, titulo, ano_publicacao, numero_edicao, paginas, categoria, preco)
values(null, 4, 'titulo2', '2002', 2, 222, 'Didatico', 200);
insert into livros(id, usuario_id, titulo, ano_publicacao, numero_edicao, paginas, categoria, preco)
values(null, 3, 'titulo3', '2003', 3, 333, 'Ficcao', 300);
insert into livros(id, usuario_id, titulo, ano_publicacao, numero_edicao, paginas, categoria, preco)
values(null, 4, 'titulo4', '2004', 4, 444, 'Romance', 400);
insert into livros(id, usuario_id, titulo, ano_publicacao, numero_edicao, paginas, categoria, preco)
values(null, 2, 'titulo5', '2005', 5, 555, 'Cientifico', 500);
use ADS2_BIBLIOTECA;
insert into estados(sigla_estado, nome_estado)
values('RS', 'Rio Grande do Sul');
insert into estados(sigla_estado, nome_estado)
values('SC', 'Santa Catarina');
insert into estados(sigla_estado, nome_estado)
values('PR', 'Parana');
insert into estados(sigla_estado, nome_estado)
values('RJ', 'Rio de Janeiro');
insert into estados(sigla_estado, nome_estado)
values('SP', 'Sao Paulo');
#Consultando
select *from usuarios;
select *from estados;
select *from livros;
select usuario_id, usuarios.nome, usuarios.sobrenome, usuarios.tipo_usuario, livros.id, titulo, categoria, preco, estados.nome_estado
from livros
inner join usuarios on usuarios.id = livros.usuario_id
inner join estados on estados.sigla_estado = usuarios.sigla_estado
where categoria = 'Cientifico';
select usuarios.id, usuarios.nome, usuarios.sobrenome, usuarios.tipo_usuario, livros.id, livros.titulo, livros.categoria, livros.preco
from usuarios
inner join livros on livros.usuario_id = usuarios.id
where tipo_usuario = 'aluno';
...