| Login | Tour | Inicio | Chat | Descargas | Wallpapers | Páginas recientes | FAQ | | ||||||||||||||||||||||||||||||||||
Custom Search
![]() Podcast feed with CakePHP 1.2 aarkerio Hummers para el SNTE litosteel Abusados con la extorsión telefónica tonathiu No se si Reir o Llorar vendaval Full text search engine aarkerio Sigue con nosotros aarkerio Hot and really brave aarkerio La resistencia xhaman Bug || Feature vendaval A bajo nivel vendaval ¿No que no tronabas, pistolita? asarch Cow Love aarkerio La UNAM sigue subiendo aarkerio Regálame tus ideas ¿sí? tuanis Para entender la crisis aarkerio ¿P's no que era imposible? aarkerio Tu billete de 20 ya vale menos...¿Se acuerdan? luzbel Intrepid Ibex beta disponible! der_teufel La matanza dejó una huella muy significativa y no queremos que vuelva a suceder tonathiu "Estática" culpada por alterar votos en Columbia pollotron ![]() GNU/Linux ![]() Hacktivismo ![]() Debian ![]() NetBSD ![]() WWW ![]() Guia Linux ![]() Server Side ![]() Ofimatica ![]() Despabilando... ![]() Mundo Maya ![]() Literatura ![]() Agora ![]() Psicologia ![]() Economia ![]() Ambientalismo ![]() Desarrollo Biologia ![]() |
1er Micro-Howto, sobre Base de Datos.
Desde la redacción de Desarrollo,
rnstux informa. 2008-07-21 13:49:53-05
Gracias al buen Asarch, me convenció de empezar con una serie de Micro-Howto's sobre Base de Datos, es muy recomendable que hayan leído los logs de las platica sobre BD, aquí los links,
http://www.mononeurona.org/users/entry/rnstux/1403 http://www.mononeurona.org/users/entry/rnstux/1409 Ahora como primer ejercicio vamos a crear la clásica base de datos para control escolar, y empezaremos con la relación. Un alumno puede tener muchas calificaciones(1:N) y una calificación solo puede ser de un alumno(1:1). Identificamos Entidades, Relaciones, Atributos, Llaves. Entidad: Alumno Atributos: Numero de control, Nombre, Apellido Paterno, Apellido Materno, Dirección, Teléfono, Carrera, Semestre, Grupo, Especialidad,Curp, etc..etc. Clave Primaria: Numero de Control Claves Foráneas: No tiene Entidad: Calificaciones Atributos: Identificador Calificación, Unidad 1, Unidad 2, Unidad 3, Unidad 4, Unidad 5.. Clave Primaria: Identificador Calificación Claves Foráneas: Numero de Control. Para hacerlo de manera profesional es necesario considerar el cuadro siguiente para la documentación de la base de datos.(Por cuestiones de espacio y didácticas no pondré todos los atributos) Nombre de la tabla: Alumno Objetivo: Almacenar datos de los alumnos del Instituto- Llave Primaria: Num_Control Llave Extranjera: Ninguna.
Es necesario hacer esto para todas las tablas de la base de datos, de tarea hacen la tabla para calificaciones. Permalink: http://www.mononeurona.org/news/display/2412 ![]() 3.- asarch on 21/7/08Ta bien asi. Te felicito. Ojala y todo los demas huevones publicaran algo. Jajaja :-P 4.- saidjose on 21/7/08Esta chída la explicación... Despues puedes juntar todo como un Mini howto para base de datos y publicarlo en Server Side de la mononeurona 6.- aarkerio on 22/7/08Un tip: siempre es preferible usar columnas integer antes que varchar pues para la base de datos y el sistema los int son más ligeros y optimizados. El campo Num_Control si siempre va a ser un número puede ser int o smallint sobre todo si ese campo va a servir como llave primaria que son las "tuberías" por las cuales corren las búsquedas en la BD. También a muchas personas les gusta crear llaves primarias compuestas pero eso a mi se me hace poco practico y más complejo, se puede evitar creando siempre el campo: id serial PRIMARY KEY en cada tabla para siempre saber que tenemos un index seguro y sin replicaciones. Algunas personas crean el campo "teléfono" como int, pero eso crea problemas porque mucha gente (las secres po ejemplo) ponen guiones a los phones y ahí truena el insert. En general en los frameworks como RoR o Django o CakePHP la convención es usar nombres en plural para las tablas. Chido el post, SQL es muy sencillo y potente, sólo que en Linux no he econtrado una buena herramienta de diseño. En Windows hay programas donde creas el diseño y se genera el script SQL para crear las tablas en la BD que elijas. 7.- rnstux on 22/7/08Gracias por los tips Aarkerio, no soy un experto en base de datos, pero lo poco que se lo quiero compartir, algunas cosas sobre la tabla son por cuestiones didácticas por ejemplo: Con respecto a los datos de tipo int es muy cierto, lo maneje asi por que muchos de los números de control en mi escuela comienza son del tipo: 08, 07, 06, y al extraer los dos primeros dígitos que representan el año en que ingreso es mas fácil obtenerlos, al igual que es mas fácil obtener la clave lada de un teléfono, bueno cuestion de diseño. Con las claves compuestas estoy de acuerdo. Claro trabajar con frameworks es muy chido, en el segundo post ya puse el nombre en plurar (Alumnos), faltaría que mi campo en lugar de ser numero de control fuera id. Al igual que la tabla no se encuentra normalizada :P pero eso es tema de otro post :) Gracias por los comentarios y espero sigas revisando y aportando en los siguientes que haga saludos! |
![]() El del puntero del mouse :-) 11 hours, 36 minutes ago http://media.fastcli ck.net/w/pc.cgi?mid= 268850&sid=13499 11 hours, 37 minutes ago aarkerio: ¿cómo se logra este efecto?: 11 hours, 37 minutes ago TheInquererES: La elevada demanda de OpenOffice 3 ha tirado su web 14 hours, 28 minutes ago recibiendo calificacion, espero 10 ;-) 15 hours, 21 minutes ago En clase de base de datos 15 hours, 21 minutes ago Que estuvimos haciendo >> 18242 lecturas Anticoncepción de Emergencia 15775 lecturas Sexualidad infantil y juvenil 12421 lecturas Sinapsis y exocitosis 11155 lecturas Rompiendo cualquier clave WEP en unos pocos minutos 11130 lecturas Mi primer CakePHP, mmmmm cakeee 7818 lecturas Evolución filética en las hepáticas 7691 lecturas Interrupción de Embarazo 5963 lecturas BASH y Primeros Comandos 5948 lecturas CakePHP II Active Record 5867 lecturas
|
||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||
| La envidia es una declaración de inferioridad. Napoleón | ||||||||||||||||||||||||||||||||||
| Este trabajo está licenciado bajo la MonoNeurona Commons License. 2002-2008 © :: Colectivo MonoNeurona.org :: | ||||||||||||||||||||||||||||||||||