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

tengo una duda con las tablas de db

Estas en el tema de tengo una duda con las tablas de db en el foro de Bases de Datos General en Foros del Web. Hola estoy aprendiendo php y la verdad que tengo una duda un poco tonta pero no consigo hacer que funcione, hos comento yo hasta ahora ...
  #1 (permalink)  
Antiguo 11/07/2011, 08:58
 
Fecha de Ingreso: abril-2011
Mensajes: 867
Antigüedad: 13 años
Puntos: 5
tengo una duda con las tablas de db

Hola estoy aprendiendo php y la verdad que tengo una duda un poco tonta pero no consigo hacer que funcione, hos comento yo hasta ahora estaba creando las tablas con phpmyadmin en una pequella web que estoy haciendo en modo local y claro si subo esta web al servidor de internet tendre que crear otra vez estas tablas ya que las tengo en modo local, bien yo lo que quiero es crear esta base de datos y sus tablas en mi codigo para asin cuando suba la pagina no tener que volver a crearlas,yo las cree en la pagina de action del formulario al principio pero no me funciono.

Donde tengo que crear la base de datos y sus tablas?
  #2 (permalink)  
Antiguo 11/07/2011, 09:03
 
Fecha de Ingreso: agosto-2010
Ubicación: Tenerife
Mensajes: 893
Antigüedad: 13 años, 8 meses
Puntos: 202
Respuesta: tengo una duda con las tablas de db

Pues o las creas usando una consulta o desde el panel de la base de datos que te proporcione tu servidor.

'Os' va sin H, que te saltes las tildes haya tú, pero ese "hos" dolió.
__________________
Pensaba que internet era una gran biblioteca de sabiduría, hasta que comprendí que un libro no puede tener mil páginas llenas de faltas de ortografía... :(
  #3 (permalink)  
Antiguo 11/07/2011, 09:04
Avatar de vgonga1986  
Fecha de Ingreso: marzo-2008
Ubicación: País de Pandereta
Mensajes: 1.021
Antigüedad: 16 años, 1 mes
Puntos: 253
Respuesta: tengo una duda con las tablas de db

Lo que comentas tiene varias soluciones, depende de lo que desees y de cómo tengas planteada la aplicación.

Una de las opciones, si estás usando phpmyadmin es exportar la base de datos que tienes de forma local y exportarla de nuevo en tu servidor, así crearás una réplica exacta. Esto es recomendable si no vas a mover mucho la aplicación de lugar.

Si la aplicación la vas a estar moviendo lo suyo es que te crees un instalador. Aunque suene complejo, un instalador no es más que un par de páginas php (iguales que las que habrás usado para tu aplicación) pero que se accedan únicamente la primera vez que crees la misma y que definan una serie de valores para "instalar" la aplicación, como puede ser host, usuario y pass de la BD, variables globales... Si vas a tirar por aquí, te puedo dar algunas ideas.

Espero que te valga, un saludo.
  #4 (permalink)  
Antiguo 11/07/2011, 09:07
 
Fecha de Ingreso: agosto-2010
Ubicación: Tenerife
Mensajes: 893
Antigüedad: 13 años, 8 meses
Puntos: 202
Respuesta: tengo una duda con las tablas de db

En cualquier caso tienes la opción de exportar base de datos en en el phpmyadmin.
Lo ejecutas como consulta en el phpmyadmin del servidor y ya está.
__________________
Pensaba que internet era una gran biblioteca de sabiduría, hasta que comprendí que un libro no puede tener mil páginas llenas de faltas de ortografía... :(
  #5 (permalink)  
Antiguo 11/07/2011, 09:29
 
Fecha de Ingreso: abril-2011
Mensajes: 867
Antigüedad: 13 años
Puntos: 5
Respuesta: tengo una duda con las tablas de db

perdona IEKK por mi mala ortografia bueno esta bien las respuestas pero no puedo crearlas yo mismo la base de datos en mi script?
  #6 (permalink)  
Antiguo 11/07/2011, 09:50
 
Fecha de Ingreso: abril-2011
Mensajes: 867
Antigüedad: 13 años
Puntos: 5
Respuesta: tengo una duda con las tablas de db

vgonga 1986 a que te refieres si no voy a mover mucho la aplicacion?
bueno creo que me quedare con la de exportarla, ya que parece mas facil un saludo y gracias a todos los que colaborar.
  #7 (permalink)  
Antiguo 11/07/2011, 10:02
Avatar de vgonga1986  
Fecha de Ingreso: marzo-2008
Ubicación: País de Pandereta
Mensajes: 1.021
Antigüedad: 16 años, 1 mes
Puntos: 253
Respuesta: tengo una duda con las tablas de db

Buenas,

Con mover la aplicación me refiero si la vas a instalar en muchos lados, por ejemplo, yo hice hace tiempo un gestor de incidencias para una empresa en php. Estos querían que cada departamento tuviera su propio gestor en un servidor diferente, porque cada uno tenía su propio servidor. Esa aplicación se iba a instalar muchas veces, por eso tuve que incluir un par de páginas de instalación para que en cada departamento se pusieran los datos de cada servidor. No sé si me explico.

Un saludo.
  #8 (permalink)  
Antiguo 11/07/2011, 10:12
 
Fecha de Ingreso: abril-2011
Mensajes: 867
Antigüedad: 13 años
Puntos: 5
Respuesta: tengo una duda con las tablas de db

si te entendi pero no es mi caso ya que mi pagina seria para publicar noticias en diferentes ciudades osea las tablas seria para cada ciudad pero no es posible colocar el codigo para crear la base de datos?o es mejor usar phpmyadmin ?
  #9 (permalink)  
Antiguo 11/07/2011, 10:18
Avatar de vgonga1986  
Fecha de Ingreso: marzo-2008
Ubicación: País de Pandereta
Mensajes: 1.021
Antigüedad: 16 años, 1 mes
Puntos: 253
Respuesta: tengo una duda con las tablas de db

Si que puedes poner código para crear tablas, de hecho, con php puedes lanzar cualquier sentencia sql, entre ellas "CREATE TABLE". Lo que tendrías que mirar si tienes permisos para crear tablas, si no es así, tendrás que cambiártelos.

Un saludo.

EDITO: De todas formas, si lo que vas a hacer es crear una tabla para cada ciudad, es una mal diseño de base de datos. Lo suyo sería una tabla ciudades con clave primaria id_ciudad y una tabla noticias, en la que cada noticia tuviera una clave externa que refiera a la id_ciudad correspondiente.
  #10 (permalink)  
Antiguo 11/07/2011, 10:31
 
Fecha de Ingreso: abril-2011
Mensajes: 867
Antigüedad: 13 años
Puntos: 5
Respuesta: tengo una duda con las tablas de db

pero como tendria que hacer la clave externa no entendi bien esto?
  #11 (permalink)  
Antiguo 11/07/2011, 10:39
Avatar de vgonga1986  
Fecha de Ingreso: marzo-2008
Ubicación: País de Pandereta
Mensajes: 1.021
Antigüedad: 16 años, 1 mes
Puntos: 253
Respuesta: tengo una duda con las tablas de db

Mírate un manual de bases de datos o de sql, pero te avanzo, para que sepas por donde buscar:

Código:
CREATE TABLE Ciudad (
	id_ciudad integer auto_increment,
	nombre varchar(20) not null,
	PRIMARY KEY(id_ciudad)
);

CREATE TABLE Noticia (
	id_noticia integer auto_increment,
	titulo varchar(20) not null,
	noticia text,
	id_ciudad integer,
	PRIMARY KEY(id_noticia),
	FOREIGN KEY(id_ciudad) REFERENCES Ciudad(id_ciudad)
);
Como puedes ver creamos una tabla Ciudad con clave primaria id_ciudad y una tabla noticia con clave primaria id_noticia. Dentro de Noticia tenemos una columna id_ciudad que hace referencia (FOREINGN KEY) a la clave de Ciudad. Por la propia base de datos, es imposible añadir una ciudad que no esté en la tabla Ciudad, ya que te daría error. A la hora de insertar una noticia no tienes más que añadir el id de la ciudad a la que se refiere. Así, cuando quieras añadir una nueva ciudad no tendrás que crear una tabla nueva, si no simplemente añadir un registro a la tabla Ciudad.

Insisto, échale un ojo a un manual de diseño de bases de datos, ten en cuenta que es la base de cualquier aplicación y es el principio, la gente suele irse a PHP o a alto nivel antes sin fijarse en eso y muchas veces una aplicación se hace mucho más sencilla echando un ojo a la base antes. Es más fácil empezar la casa por los cimientos, no?

Espero que te sirva, un saludo.
  #12 (permalink)  
Antiguo 11/07/2011, 10:40
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: tengo una duda con las tablas de db

¿O te convendría preguntar estas cosas directamente en el foro de Bases de Datos?
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #13 (permalink)  
Antiguo 11/07/2011, 10:48
 
Fecha de Ingreso: abril-2011
Mensajes: 867
Antigüedad: 13 años
Puntos: 5
Respuesta: tengo una duda con las tablas de db

vgonga 1886 muchas gracias por tu consejo te hare caso me pondre al dia con base de datos pero una cosita hasta ahora utilizo mysql y creo que no acepta claves foraneas bueno me pondre al dia un saludo.
gnzsoloyo perdona me ire a base de datos si tengo dudas un saludo.
  #14 (permalink)  
Antiguo 11/07/2011, 11:20
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: tengo una duda con las tablas de db

MySQL tiene claves foráneas, pero sólo si usas el motor de tablas InnoDB (que también tiene transacciones).
Normalmente es el motor InnoDB por default en cualquier instalación posterior a la 5.0, pero cuando lo instalan en servidores de Web, es muy común que redefinan al MyISAM como motor por default.
No es que el InnoDB no esté presente, pero en esos casos las consultas de creación de tablas tienen que especificar "ENGINE=InnoDB", o de lo contrario no lo usará.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #15 (permalink)  
Antiguo 14/07/2011, 16:13
 
Fecha de Ingreso: abril-2011
Mensajes: 867
Antigüedad: 13 años
Puntos: 5
Respuesta: tengo una duda con las tablas de db

gracias gnzsoloyo por la informacion un saludo.

Etiquetas: php, tabla, tablas, formulario
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 04:29.