Ver Mensaje Individual
  #11  
Antiguo 05-12-2006
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Reputación: 29
Lepe Va por buen camino
Dado que es MySql ya dejaré de contestar porque no sé mucho, al menos en Firebird puedes poner:

Código SQL [-]
`Entrada` datetime NOT NULL default 'NOW'

NOW es una función que entiende, por tanto al crear un nuevo registro en la tabla usuarios (para que quede constancia de su entrada en el sistema), automáticamente se añade la fecha que tenga el servidor.

Id_usuario no puede ser clave primaria, ya que no permitiría la entrada de un mismo usuario dos veces.

En la tabla horarios, el id_usuario no puede ser un autoincrement, ya que se incrementaría automáticamente, y por tanto, no coincidiría con el verdadero código del usuario.


Yo puse clave primaria dos campos a la vez, el id_usuario y la fecha de entrada (ambos a la vez forman la clave primaria), ya que las dos cosas a la misma vez es imposible que ocurra, salvando una posible violación de clave primaria en la tabla.

Otra cosa: Si te fijas en esta línea:
Código SQL [-]
 `User` varchar(10) NOT NULL default '',

UserName
"User" aparece en negrita, lo que quiere decir que es una palabra reservada de SQL, por tanto, al intentar acceder por SQL a ese campo te dará errores. Cambia el nombre del campo añadiendo una letra más. Acabo de hacer la prueba y "UserName" no lo detecta como palabra reservada.

Faltaría añadir los índices secundarios a los campos que vas a acceder constantemente, por ejemplo el nombre del usuario, que lo buscarás cada dos por tres en el login de tu sistema.

Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente,
se lo volveré a explicar hasta que no lo entienda, Gracias.

Última edición por Lepe fecha: 05-12-2006 a las 00:47:32.
Responder Con Cita