Enlazar tablas

Como hago para enlazar estas tablas:
Base de datos: 'usuarios'
--
-- --------------------------------------------------------
--
-- Estructura de tabla para la tabla 'escolaridad'
--
Create table escolaridad (
Id int(11) not null,
fecha_nacimiento varchar(10) not null,
curp varchar(18) not null,
estado_civil varchar(10) not null,
ingles_porcentaje int(3) not null,
otro_idioma varchar(10) not null,
o_idioma_porcentaje int(3) not null,
otros_estudios varchar(2) not null,
especialidad varchar(35) not null,
institucion varchar(50) not null,
primary key (id)
) engine=myisam  default charset=utf8;
-- --------------------------------------------------------
--
-- Estructura de tabla para la tabla 'laboral'
--
Create table laboral (
id int(11) not null,
nombre_empresa varchar(30) not null,
organismo varchar(9) not null,
giro varchar(35) not null,
calle varchar(35) not null,
numero varchar(10) not null,
colonia varchar(30) not null,
codigo_postal varchar(8) not null,
cd varchar(30) not null,
municipio varchar(35) not null,
estado varchar(30) not null,
telefono_lada varchar(15) not null,
fax varchar(15) not null,
e_mail varchar(40) not null,
jefe_inmediato varchar(40) not null,
puesto varchar(30) not null,
antiguedad varchar(20) not null,
primary key  (id)
) engine=myisam  default charset=utf8;
-- --------------------------------------------------------
--
-- Estructura de tabla para la tabla 'password'
--
Create table `password` (
`user` int(8) not null,
pass varchar(10) not null,
id int(11) not null auto_increment,
primary key  (id)
) engine=myisam  default charset=utf8;
-- --------------------------------------------------------
--
-- Estructura de tabla para la tabla 'perfil'
--
Create table perfil (
numero_control varchar(8) not null,
apellido_paterno varchar(30) not null,
apellido_materno varchar(30) not null,
nombre_s varchar(30) not null,
carrera_egreso varchar(30) not null,
especialidad varchar(40) not null,
id int(11) not null auto_increment,
sexo varchar(15) not null,
calle varchar(35) not null,
numero varchar(6) not null,
colonia varchar(30) not null,
codigo_postal varchar(8) not null,
cd varchar(30) not null,
municipio varchar(30) not null,
estado varchar(30) not null,
telefono_lada varchar(15) not null,
e_mail varchar(40) not null,
celular varchar(15) not null,
semestre_egreso varchar(20) not null,
ano_egreso int(4) not null,
titulado varchar(2) not null,
primary key  (id)
) engine=myisam  default charset=utf8;
Estas las saque de mi appserv 2.5.9, y allí no manejo el código, ¿cómo le podría hacer para enlazar estas tablas por el id?

1 respuesta

Respuesta
1
No se ya sabes conectarte a mysql ... Si ya sabes pues crea una consulta con las tablas por ejemplo entre laboral y pass
selec a.*, b.* from laboral a inner join pass on a.id=b.user into cursor tabla1
Bueno realmente a ciegas que es lo sabes en realidad. Haber si te sirve
Gracias por tu respuesta, pero creo que tengo otro problema, me dice que mi moto innobd esta desactivado, ¿cómo lo puedo activar?
Gracias por tu respuesta ya active lo del moto innobd, pero como poder hacer ahora otra vez para enlazar esas tablas, la verdad es la primera vez que utilizo mysql y php, estoy haciendo una página con php, tengo 3 pantallas, ebn la primero ingresan sus datos personales, en la segunda sus datos escoalres y en la tercera sus datos personales, en las tres tablas el id es la llave primaria, pero no se como guardar en la primera tabla que te muestro arriba, y una vez que se gaurden sus datos personales se pase a al siguiente pantalla que seria la tabla de escolaridad, y se gurade con el mismo id, y así con labora, esto me serviría porque al momento de hacer una consulta me amnde el dato de un usuario pero me mande los datos que tiene en las 3 tablas
Bueno en la ultima tabla no coincide el id que debería ser int(11) miar el enlazar las tablas solo consiste en guardar el tablas diferentes datos relacionados por un campo en este caso el id que por supuesto debe llamarse de diferente forma en cada tabla pero debe ser del mismo tipo y longitud.
El proceso de enlazado consite en crear un sql que una las tabls creando en memoria lo que llammos cursor o también le dices datos front end que se general a partir de una consulta en la memoria del computador y no así en el servidor.
Al guuardar es simple solo abres las diferentes tablas y guarads los datos respectivos en cada tabla no olvidando que si son datos del mismo sujeto deben tener el mismo ID en cada tabla (llamada como sea pero es su llave maestra como un código) para identificar que la inf conteniad en el corresponde a un solo individuo.
Para mostrar los datos es donde se gereran consultas Sql para unir una sola tabla con los datos de escolaridad y laboral seria de la siguiente manera
select escolaridad.*,laboral.* from escolaridad inner join laboral on escolaridad.id=laboral.id order by id
eso te traeria los datosde las dos tablas unidas  pero casi siempre se usa buscando un alumno por ejemplo cuyo id sea 123
select escolaridad.*,laboral.* from escolaridad inner join laboral on escolaridad.id=laboral.id where escolaridad.id=123
y si esta en una variable pues se usa ?antes q la variable la verdad q PHP me falla un poco la sintaxis.
Bueno espero haberte aclarado un poco la figura de la relación y perderte más contáctame a través del messenger cualquier cosa [email protected]

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas