Ver Mensaje Individual
  #1 (permalink)  
Antiguo 05/12/2009, 09:01
Avatar de junihh
junihh
 
Fecha de Ingreso: febrero-2004
Ubicación: República Dominicana
Mensajes: 997
Antigüedad: 22 años, 9 meses
Puntos: 7
Problema al crear automaticamente varias tablas en una BD

Estuve buscando la forma como puedo crear directamente desde PHP una base de datos en MySQL, en el que a su vez se cree automaticamente las tablas necesarias y encontre este ejemplo. Modifique el codigo como necesitaba y ahora tengo lo siguiente:

Código PHP:
<?php

$hostName 
= 'localhost';
$hostUser = 'miusuario';
$hostPass = '1234';

$nameDB = 'pruebacrear_db';
$nameTB1 = 'tabla1';
$nameTB2 = 'tabla2';
$nameTB3 = 'tabla3';

// Conectarse a MySQL

$con = mysql_connect($hostName, $hostUser, $hostPass);

// Crear la base de datos

if (!$con)
{
    die(
'Could not connect: ' . mysql_error());
}

if ( 
mysql_query("CREATE DATABASE " . $nameDB, $con) )
{
    echo 
"Database created";
} else
{
    echo 
"Error creating database: " . mysql_error();
}

// Comandos para crear las tablas

$tb1 = "CREATE TABLE $nameTB1 (
    ID int(3) NOT NULL AUTO_INCREMENT,
    PRIMARY KEY(ID),
    Nombres varchar(15),
    Apellidos varchar(15),
    Edad int
)"
;

$tb2 = "CREATE TABLE $nameTB2 (
    ID int(3) NOT NULL,
    PRIMARY KEY(ID),
    Telefono varchar(15),
    Direccion varchar(50),
)"
;

$tb3 = "CREATE TABLE $nameTB3 (
    ID int(3) NOT NULL,
    PRIMARY KEY(ID),
    Pais varchar(20),
    Ciudad varchar(20),
)"
;

// Ejecutar la solicitud de las nuevas tablas

mysql_select_db($nameDB, $con);

mysql_query($tb1,$con);
mysql_query($tb2,$con);
mysql_query($tb3,$con);

// Cerrar la conexion a la base de datos

mysql_close($con);

?>
Necesito que cree automaticamente tres tablas dentro de la base de datos como pueden ver, pero apenas me crea una, asi que intente esto:

Código PHP:
mysql_select_db($nameDB, $con);
mysql_query($tb1,$con);

mysql_select_db($nameDB, $con);
mysql_query($tb2,$con);

mysql_select_db($nameDB, $con);
mysql_query($tb3,$con); 
Tampoco funciono, por lo que obviamente estoy haciendolo mal. Que puede estar mal ??
__________________
JuniHH
- Mi blog
- Mi portafolio

Última edición por junihh; 05/12/2009 a las 09:34