Jump to content


Photo

Crear un indice al ingresar registros en la base de datos


  • Please log in to reply
5 replies to this topic

#1 madri09

madri09

    Advanced Member

  • Miembros
  • PipPipPip
  • 72 posts

Posted 15 October 2012 - 03:09 PM

Buenas noches, tengo un formulario en el cual ingreso datos de varias tablas y quiero que cuando al pinchar en un boton de nuevo registro automaticamente me de un número(el cual tiene que ser igual en todas las tablas) para que cuando ingrese los datos en las tablas pueda hacer la consulta filtrando por dicho número.
Por ejemplo:

Tabla: Usuario ------> Pedro
Tabla: Avisos -----> 10
Tabla: Aparatos-------> Lavadora


Tabla: Usuario-----> NUM_USUARIO=1
Tabla: Avisos------->NUM_USUARIO=1
Tabls: Aparatos----->NUM_USUARIO=1


Gracias.
  • 0

#2 omarox12

omarox12

    Newbie

  • Miembros
  • Pip
  • 9 posts

Posted 15 October 2012 - 04:39 PM

La forma correcta es utilizar claves foráneas (FOREIGN KEY) que hace referencias a otras tablas, lo ideal para esto es que sepas modelar a través de MER y MR, pero si no sabes te lo voy a explicar de forma más simple.

CREATE TABLE usuario_ejemplo(
usu_id int NOT NULL,
usu_nombre varchar(25) NOT NULL,
usu_fecha date NOT NULL,
PRIMARY KEY(usu_id)
);

CREATE TABLE aviso(
avi_id  int NOT NULL,
        usu_id int NOT NULL,
        apa_id int NOT NULL,
        FOREIGN KEY(usu_id) REFERENCES usuario_ejemplo,
        FOREIGN KEY(apa_id) REFERENCES aparatos,
        PRIMARY KEY(avi_id)
);

CREATE TABLE aparatos(
apa_id int NOT NULL,
apa_nombre varchar(25) NOT NULL,
apa_tipo varchar(25) NOT NULL,
PRIMARY KEY(usu_id)
);


bueno la explicación es la siguiente  FOREIGN KEY(la clave foránea de la otra tabla) REFERENCES aquí va el nombre de la tabla donde se saco la clave foranea
  • 0

#3 madri09

madri09

    Advanced Member

  • Miembros
  • PipPipPip
  • 72 posts

Posted 16 October 2012 - 01:19 AM

Omarox12 gracias, pero lo que quiero es lo documentado al principio.
En el formulario, al pulsar un boton de nuevo registro automaticamente me cree un número y me lo muestre en pantalla que sea comun en todas las tablas en las que voy ingresar los datos.
No se si me explico?
  • 0

#4 Rolphy Reyes

Rolphy Reyes

    Advanced Member

  • Moderadores
  • PipPipPip
  • 2092 posts
  • LocationRepública Dominicana

Posted 16 October 2012 - 06:52 AM

Saludos.

No indicas que Base de Datos estas utilizando, pero esto normalmente se consigue vía un campo autoincremental que creas en la estructura de datos.
  • 0

#5 poliburro

poliburro

    Advanced Member

  • Administrador
  • 4945 posts
  • LocationMéxico

Posted 16 October 2012 - 07:41 AM

Omarox12 gracias, pero lo que quiero es lo documentado al principio.
En el formulario, al pulsar un boton de nuevo registro automaticamente me cree un número y me lo muestre en pantalla que sea comun en todas las tablas en las que voy ingresar los datos.
No se si me explico?


Lo ideal amigo es que nos coloques un poco de lo que llevas avanzado para darnos una idea de qué necesitas y podamos sugerirte soluciones o en su defecto proponerte alguna.. Además como dice rolphy nos ayudará mucho el saber que base de datos usas, que versión y en que lenguaje de programación lo estás ralizando... (Php, Javascrip, ..)

Por cierto, lo que te comenta el amigo omarox12  es tremenadamente valioso ya que es muy importante modelar adecuadamente nuestra base de datos para optimzar el acceso de lectura y escritura.

Saludos cordiales..


  • 0

#6 madri09

madri09

    Advanced Member

  • Miembros
  • PipPipPip
  • 72 posts

Posted 16 October 2012 - 08:15 AM

De verdad muchas gracias a todos por vuestro interes pero como podeis observar estoy bastante verde y no puedo ayudaros mucho.
No se si es esto lo que me indicais:

[html5]
Motores de almacenamiento
Motor de almacenamiento Descripción
MyISAM Default engine as of MySQL 3.23 with great performance
CSV CSV storage engine
MRG_MYISAM Collection of identical MyISAM tables
BLACKHOLE /dev/null storage engine (anything you write to it disappears)
FEDERATED Federated MySQL storage engine
InnoDB Supports transactions, row-level locking, and foreign keys
ARCHIVE Archive storage engine
MEMORY Hash based, stored in memory, useful for temporary tables
[/html5]

Trabajo con php,Javascrip y ajax.
Gracias.
  • 0




IP.Board spam blocked by CleanTalk.