Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
E aí pessoal, beleza?
Há muito tempo estou pensando como fazer o banco de dados de um boletim escolar, porém, ainda sou newba neste assunto :( Agora estou fazendo curso técnico, e fico no máx. 1 hora por dia no PC, aí é osso :( E só vou começar a aprender BD no semestre que vem.
Então... eu criei uma tabela notas onde há o RA do aluno e os campos de nota de todas as matérias, de cada bimestre e também de recuperação. O problema é que ficou enorme, são umas 14 matérias e, além disso, são 4 bimestres e ainda há a recuperação =[
Teria algum modo de eu inserir, por exemplo, no campo mat (de Matemática), algo como: 8.5; 10; 9; 6;, as quais seriam as notas do aluno, em ordem de bimestre? Isso resumiria muiiitooo o meu banco de dados. Eu quero colocar múltiplos valores no campo, mas quero que eles sejam independentes, ou seja, se o professor for editar, ao invés de editar tudo, só editará um, há como?
Valeu, aguardo ajuda :D
Criei duas tabelas, a primeira foi alunos:
ID
RA
nome
anoA outra foi notas:
ID
RA
lpg1
lpg1r
lpg1t
lpg2
lpg2r
lpg2t
lpg3
lpg3r
lpg3t
lpg4
lpg4r
lpg4t
lpg = Língua Portuguesa GramáticaOs números são os bimestres.
r e t são 'recuperação' e 'trabalhos', respectivamente.
Desta forma, eu faria o SELECT através do RA.
Imagine isso com 14 matérias, o tamanho da bagaça =[
// Seria melhor eu criar outra tabela materias?
Como disse o William, estude Normalização. Pra esse BD que você está querendo fazer, faça uma tabela pra alunos, outra para matérias e outra para notas. Ficaria assim:
Alunos
(PK) RA (você pode usar o próprio RA como chave primária, não precisa de ID)
nome
ano
Matérias
(PK) ID_materia
materia
Notas
(PK) RA
(PK) ID_materia
[Chave composta]
bimestre
nota
reforço (campo booleano)
trabalho (campo booleano)
Bem melhor assim né??
obs.: se tiver algum erro ou estiver faltando me avisa que eu mudo, fiz rapidinho =)
Beleza... eu entendi, quase cheguei a criar deste modo, o problema é esse: onde vou inserir as notas? Em qual campo? Como vou fazer o select?
Não estou entendendo como vários valores podem ficar numa tabela tão simples, não entendi como se faz a inserção de dados =[
Exemplo:
Tenho a matéria pt de Português, o aluno com RA 111111111111-1 e a nota do 1º bimestre, como faço para inserir esta nota na tabela?
// Edit
Puts, acho que entendi :D
Ficaria deste modo:
ra_aluno.................id_materia....nota...bimestre...reforco...trabalho
111111111111-1.......ptg................9.........1...............N............N
222222222222-2.......mat...............6.........1...............S............N
****
É isso? Nuss... estou noobando demais com dados, tenho que treinar mais XD
O botão de editar do primeiro post sumiu, então vou começar de novo.
Alunos
(PK) RA
Nome_Aluno
Ano_Aluno
Materias
(PK) ID_Materia
Nome_Materia
Bimestre_Materia
(PK) ID_Bimestre
(FK) ID_Materia
Bimestre
Nota
(PK) ID_Nota
(FK) RA
(FK) ID_Bimestre
Nota
Reforco
Trabalho
Agora sim! Percebi tambem que podem podem existir varias notas para trabalhos da mesma materia no mesmo bimestre, então transformei as PK's do Nota em FK's e criei a PK ID_Nota. É preciso ter muita atenção pra fazer um BD perfeito, tudo vira pegadinha.
Valeu pela ajuda, cara! Agora percebo muito melhor como é que se relaciona tabelas... :D
estude: normalização de dados
você precisará de tabelas auxiliares que conterão várias linhas para mostrar a 'mesma informação'. (id aluno/nota/id_materia)
poste como você modelou, para que consigamos sugerir algo.