Foros del Web » Programando para Internet » PHP »

duda crear una tabla mediante php.

Estas en el tema de duda crear una tabla mediante php. en el foro de PHP en Foros del Web. Hola todos. Resulta que tengo el siguiente código en el que se crea una tabla, pero hay una línea que no entiendo, la que dice ...
  #1 (permalink)  
Antiguo 10/06/2012, 18:57
Avatar de xFantaSx  
Fecha de Ingreso: agosto-2011
Mensajes: 243
Antigüedad: 12 años, 8 meses
Puntos: 20
duda crear una tabla mediante php.

Hola todos.
Resulta que tengo el siguiente código en el que se crea una tabla, pero hay una línea que no entiendo, la que dice KEY movie_type (movie_type, movie_year).
El código es el siguiente:

Código PHP:
Ver original
  1. mysql_select_db('moviesite', $db) or die(mysql_error($db));
  2. $query = 'CREATE TABLE movie (
  3.         movie_id    INTEGER UNSIGNED    NOT NULL    AUTO_INCREMENT,
  4.         movie_name  VARCHAR(255)        NOT NULL,
  5.         movie_type  TINYINT             NOT NULL    DEFAULT     0,
  6.         movie_year  SMALLINT UNSIGNED   NOT NULL    DEFAULT     0,
  7.         movie_leadactor INTEGER UNSIGNED    NOT NULL    DEFAULT 0,
  8.         movie_director  INTEGER UNSIGNED    NOT NULL    DEFAULT 0,
  9.  
  10.         PRIMARY KEY (movie_id),
  11.         KEY movie_type (movie_type, movie_year)
  12.         )
  13.         ENGINE=MyISAM';
  14.         mysql_query($query, $db) or die (mysql_error($db));
__________________
Aprende cómo ganar dinero en internet...o ganar dinero rapido?

Última edición por xFantaSx; 10/06/2012 a las 19:03
  #2 (permalink)  
Antiguo 10/06/2012, 20:21
 
Fecha de Ingreso: agosto-2011
Ubicación: Santo Domingo
Mensajes: 487
Antigüedad: 12 años, 8 meses
Puntos: 31
Respuesta: duda crear una tabla mediante php.

Esa linea es para el PRIMARY KEY que sera la llave de tu tabla para los registros
  #3 (permalink)  
Antiguo 11/06/2012, 11:00
Avatar de xFantaSx  
Fecha de Ingreso: agosto-2011
Mensajes: 243
Antigüedad: 12 años, 8 meses
Puntos: 20
Respuesta: duda crear una tabla mediante php.

no entiendo, la línea de PRIMARY KEY establece movie_id como la llave primaria, pero la que dice KEY no más que hace?.
__________________
Aprende cómo ganar dinero en internet...o ganar dinero rapido?
  #4 (permalink)  
Antiguo 11/06/2012, 11:49
Avatar de patriciomase  
Fecha de Ingreso: abril-2012
Ubicación: Mar del Plata
Mensajes: 323
Antigüedad: 12 años
Puntos: 34
Respuesta: duda crear una tabla mediante php.

Cita:
Iniciado por xFantaSx Ver Mensaje
no entiendo, la línea de PRIMARY KEY establece movie_id como la llave primaria, pero la que dice KEY no más que hace?.
Es un índice.
  #5 (permalink)  
Antiguo 11/06/2012, 11:59
 
Fecha de Ingreso: junio-2012
Ubicación: Argentina - Buenos Aires
Mensajes: 135
Antigüedad: 11 años, 10 meses
Puntos: 32
Respuesta: duda crear una tabla mediante php.

La clave primaria es unica y por lo tanto es por el campo por el cual obtendras la seguridad que es el registro que buscas en la tabla.
Cuando creas otra clave (key) o indice(index) que no es primaria con eso le dices al motor de base de datos, que probablemente hagas consultas sobre esta tabla referenciandote por medio de estos campos y al decirle que sera un indice el motor se encargara de crear un archivo de indices sobre ese campo para que el acceso a los datos sea mas rapido.

Digamos que vos tenes un id incremental movie_id, pero tus usuarios seguramente haran mas busquedas por movie_type y movie_year, asi que con eso le adviertes al motor que le pegaras tambien por esos campos y que se prepare.

Espero se halla entendido y te sirva, saludos.
__________________
http://www.latinium.com.ar/
  #6 (permalink)  
Antiguo 15/06/2012, 17:15
Avatar de xFantaSx  
Fecha de Ingreso: agosto-2011
Mensajes: 243
Antigüedad: 12 años, 8 meses
Puntos: 20
Respuesta: duda crear una tabla mediante php.

Ok, muy claro,
Gracias :).
__________________
Aprende cómo ganar dinero en internet...o ganar dinero rapido?

Etiquetas: mediante, mysql, sql, tabla
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 07:34.