Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

como guardo datos relacionados

Estas en el tema de como guardo datos relacionados en el foro de Mysql en Foros del Web. hola como estan tengo una duda que no la e pododo solucinonar es con un moldelo de datos que tengo que es relacional tengo varias ...
  #1 (permalink)  
Antiguo 17/06/2008, 07:50
Avatar de a83
a83
 
Fecha de Ingreso: noviembre-2005
Ubicación: Santiago de chile
Mensajes: 637
Antigüedad: 18 años, 5 meses
Puntos: 1
Pregunta como guardo datos relacionados

hola como estan tengo una duda que no la e pododo solucinonar es con un moldelo de datos que tengo que es relacional tengo varias tabals en especial que me esta enredando un poco que es la tblempleados y tbl detalleempleados de las cuales en la primera igreso a los usuario por medio de un formulario pero mi duda es la siguiente como cargo los datos en la segunda tabla detalle que es donde van los detalles de los trabajadores que tipo de AFP tienes (id_afp,id_funcion,id_tipocontrato) clara mente estos id bienne de otras tablas ahora lo que no se es como lo ago para que considan con el trabajador o como cargo los datos en la tablas tbldetalleempleados


estas son algunas de las tablas


Código PHP:
CREATE TABLE `tblempleados` ( 
  `
Id_Empleadoint(11NOT NULL auto_increment
  `
Rutvarchar(56collate latin1_general_ci NOT NULL
  `
Nombrevarchar(56collate latin1_general_ci NOT NULL
  `
Apellidovarchar(56collate latin1_general_ci NOT NULL
  `
FechaNaciminetovarchar(56collate latin1_general_ci NOT NULL
  `
id_Estadocivilvarchar(56collate latin1_general_ci NOT NULL
  `
Fecha_Ingresovarchar(56collate latin1_general_ci NOT NULL
  `
Activovarchar(56collate latin1_general_ci NOT NULL
  `
fechaTerminovarchar(56collate latin1_general_ci NOT NULL
  
PRIMARY KEY  (`Id_Empleado`) 
ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci AUTO_INCREMENT=


Código PHP:
CREATE TABLE `tblempleadosdetalle` ( 
  `
id_EmpleadoDetalleint(11NOT NULL auto_increment
  `
id_Funcionvarchar(45collate latin1_general_ci NOT NULL
  `
id_centroCostovarchar(45collate latin1_general_ci NOT NULL
  `
FechaInicioint(25NOT NULL
  `
FechaTerminoint(45NOT NULL
  `
id_AFPvarchar(45collate latin1_general_ci NOT NULL
  `
id_isaprevarchar(45collate latin1_general_ci NOT NULL
  `
id_TipoContratovarchar(45collate latin1_general_ci NOT NULL
  `
sueldoBaseint(45NOT NULL
  `
Movilizacionint(45NOT NULL
  `
colacionvarchar(45collate latin1_general_ci NOT NULL
  `
Gratificacionint(45NOT NULL
  `
Direccionvarchar(45collate latin1_general_ci NOT NULL
  `
Telefonoint(10NOT NULL
  `
id_Empleadoint(11NOT NULL
  
PRIMARY KEY  (`id_EmpleadoDetalle`) 
ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci AUTO_INCREMENT=

si me pueden echar una mana como tiene que ser
actualente estoy guardando los datos de esta forma

Código PHP:
$fecha date("d/m/Y h:i"); 
$query="INSERT INTO tblempleados (Rut,Nombre, Apellido, FechaNacimineto, id_Estadocivil, Fecha_Ingreso, Activo, fechaTermino, fecha) VALUES ( '$_POST[Rut]','$_POST[Nombre]','$_POST[Apellido]','$_POST[FechaNacimineto]','$_POST[id_Estadocivil]','$_POST[Fecha_Ingreso]','$_POST[Activo]','$_POST[fechaTermino]','$_POST[fecha]')";// echo"$query"; 
  #2 (permalink)  
Antiguo 17/06/2008, 09:03
Avatar de Bartak  
Fecha de Ingreso: enero-2004
Ubicación: Chilito
Mensajes: 121
Antigüedad: 20 años, 3 meses
Puntos: 0
Respuesta: como guardo datos relacionados

una forma seria tener el formulario completo esto es datos empleados y detalle.
cuando ingresas los datos del empleado tomas el id_empleado que acabas de ingresar, como es auto increment deberas hacer una query como "SELECT max(Id_Empleado) as ultimo FROM Id_Empleado", una vez que tengas el id_empleados insertas la informacion en tabla detalle.

te fijaste que el id_empleado != Id_empleado uno esta en mayuscula. como consejo escribe siempre de la misma forma los atributos, todos con miniscula o inicial con mayuscula o como quieras pero que sea un estandar para ti, asi no te fundiras y trabajaras mas seguro.

saludos cordiales.
__________________
"Llegado el momento supervisare my propia caida" - Alvaro Henriquez
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 01:11.