![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|||||||
| Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
![]() |
|
|
Herramientas | Buscar en Tema | Desplegado |
|
|
|
#1
|
|||
|
|||
|
esas exactamente son las tablas que tengo hechas, existen el campo que las relaciona como tu dices, pero lo que tu ves largo son el trato con las horas, que por cierto no creo que me este quedando bien del todo, ya que de la forma como lo llevo hay que alimentar de horas las aulas 1 por 1 pero se da el caso de que hay materias que no tienen 1 hora sino 2 o 3 y hay sino se como hacer.....
__________________
Las cosas o son, o no son... |
|
#2
|
||||
|
||||
|
Cita:
¿Quieres decirme que esos son los campos de la tabla horarios? Pues, yo no lo veo conveniente. Yo lo veo así: AULAS ------ IDAula Nombre .... PROFESORES ------------ IDProfesor Nombre ... HORARIOS ---------- IDHorario AulaID -> FK ProfesorID -> FK Fecha (*) Duracion ---> representa la duración del cursado .... (*) Este campo Fecha llevará el día (dd/mm/aaaa). Tal vez, si el diseño lo amerita, el campo no deba ser de esta forma. Supuestamente los horarios se establecen para la semana y queda fijo por lo que es posible tener esto: Código:
DiaSemana - 1 --- * - Horarios - * ---- 1 - Aulas
|
*
|
1
|
Profesores
DiaSemana ---------- IDDiaSemana Nombre De este modo se puede tener algo como: 1 - Lunes 2 - Martes ... ¿Se entiende la idea? Para tener referencia a esas 17 horas, lo que se puede hacer es tener un campo en la tabla Aulas que lleve la cantidad de horas permitidas. El asunto, como dije antes es una cuestión de programación, armar las SQLs de forma apropiada, y ofrecer los medios necesario de control. Saludos, |
|
#3
|
|||
|
|||
|
ufff men no entiendo nada :S
no se, pienso que seria bueno así, horainicio del dia y horafinal pero como hago si el aula se utiliza de 7:00 a 8:00 y de 8:00 a 9:00 esta desocupada :S gracias adelantadas
__________________
Las cosas o son, o no son... |
|
#4
|
||||
|
||||
|
pues mejor que te lo explico delphius no creo que nadie lo haga, leelo de nuevo y fijate en lo que te dice alli esta la solucion
__________________
...Yo naci en esta ribera del arauca vibr@d0r Soy hermano de la espuma, de la garza, de la rosa y del sol... Viva Venezuela |
|
#5
|
|||
|
|||
|
Hola de nuevo, coincidiendo con delphius, es una manera poco elegante y bastante 'trabajosa' de trabajar. Personalmente haria
tabla 'horas': - id horas (de primary key) - dia de la semana : string - materia : string - aula : string o integer - inicio : TTime - profesor : string de esta tabla, hacer tantos registros por dias de la semana, aulas y horas en activo necesites. Una vez tuvieses esos registros, haciendo una consulta sencilla podrias encontrar las necesarias. Ej, aula 3, miercoles : select * from horas where aula = 3 and dia_semana = 'miercoles' order by inicio, o bien los dias de algebra: select * from horas where materia = 'algebra'. Tu consulta inicial se reduciria a 'select * from horas.db where aula like ' + QuotedStr(ComboBox1.text)+'%' + '''. Que luego necesites ligar aula a una tabla de aulas o bien profesor a una tabla de profesores, ya seria otra historia. Mas o menos es lo mismo que te conto delphius, solo que explicado de manera diferente. saludos y a ver si te sirve. PD: se suelen llamar a las horas por primera hora, segunda, tercera etc... asi, inicio siendo un entero tambien te serviria y simplificaria. saludos de nuevo. |
|
#6
|
||||
|
||||
|
Cita:
![]() ![]() Pensé que se entendería bien. De hecho, lo hice lo más breve y simple posible. ¿O será que por ser demasiado breve omití algunas explicaciones escenciales? ![]() lKinGl, ¿Qué es lo que no entiendes de mi diseño? Te lo puedo volver a explicar si es necesario. Esa duda de las horas de cuando está desocupada u ocupada lo trato con el diseño que he planteado. Digo, se basa en un principio elemental y básico: Si existen registros asociados a x horas, entonces para todas las 17-x horas restantes significa que el aula está desocupada. ¿Para que guardar información de que está desocupada si puede enterderse y desprenderse de otra información ya almacenada? ¡Estarías duplicando información! ¿Sabes cual es el problema lKinGl?, Encontrar las instrucciones SQL que te permiten desarrollar la programación del sistema. El diseño que yo elaboré responde a tus requisitos. Como he dicho antes, ahora lo que resta es programación, pensar un poquito. Nada más. ¿Necesitas saber cuántas horas tiene libre un aula x para un dia y? Fácil:
Esa Query la ejecuto en un TQuery, pasandole los parámetros pAulaID y pDiaSemID y después puedo hacer algo como esto:
¿Se entiende la idea? Si no entiendes te pediría entonces que me indicaras que no entiendes en vez de estar diciendo simplemente que no entiendes. Saludos, Última edición por Delphius fecha: 24-10-2008 a las 19:28:01. Razón: corrección en la consulta SQL |
|
#7
|
|||
|
|||
|
aja delphius pero tu dices:
xaula tiene xhoras desocupadas verdad? pero que horas?,por que puede ser q en el aula2 haya, clase el lunes de 7-9 y de 10-12 pero como detectar que el aula esta disponible de 9-10 esa es mi inquietud.... salu2
__________________
Las cosas o son, o no son... |
![]() |
| Herramientas | Buscar en Tema |
| Desplegado | |
|
|
Temas Similares
|
||||
| Tema | Autor | Foro | Respuestas | Último mensaje |
| dbexpress Error: unknown error Code '101' | raorre | Conexión con bases de datos | 3 | 13-10-2008 07:53:49 |
| Error General Sql Error lock conflict ...deadlock | Patricio | Varios | 1 | 19-03-2008 14:52:14 |
| error:[Fatal Error] Unit1.pas(7): Unit ZDbcConnection was compiled with a different.. | karaoke | Conexión con bases de datos | 2 | 19-12-2007 10:22:36 |
| ¿Por qué me da este error?Error creating cursor manejador | nuri | SQL | 2 | 01-08-2005 17:30:28 |
| consuta dinamicas en report builder | lledesma | Impresión | 5 | 26-04-2005 11:47:12 |
|