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

Creacion y Carga de Datos en tabla.

Estas en el tema de Creacion y Carga de Datos en tabla. en el foro de Mysql en Foros del Web. Alguna ayuda, cuando ejecuto el script todo va bien hasta que se me va en: No se ha podido crear la tabla Código PHP: <? ...
  #1 (permalink)  
Antiguo 05/11/2008, 10:33
 
Fecha de Ingreso: octubre-2005
Mensajes: 405
Antigüedad: 18 años, 6 meses
Puntos: 1
Creacion y Carga de Datos en tabla.

Alguna ayuda, cuando ejecuto el script todo va bien hasta que se me va en:
No se ha podido crear la tabla

Código PHP:
<?
 
// CONECTAR CON LA BASE DE DATOS
 
$db=mysql_connect('localhost''abcde''xyz') or die(mysql_error());
 
//Base de Datos
 
$base="felipe";
 
mysql_select_db($base) or die(mysql_error()); 
 
//Ruta archivo txt 
 
$textfile="queule:/indra/inf/EXIPRO.TXT";
 
//Tabla de Datos 
 
$table="EXIPRO";
//Si existe tabla eliminar.
 
$sql "DROP TABLE IF EXISTS `$table`";
 
mysql_query$sql$db );
//Crear tabla
 
$sql "CREATE TABLE '$table' (
        'RUBRO-P' INT(2) NOT NULL,
        'SUBRUB-P' INT(2) NOT NULL,
        'CODPRO-P' VARCHAR(15) NOT NULL,
        'NOMBRE-P' VARCHAR(40) NOT NULL,
        'TIPPRO-P' CHAR(1) DEFAULT NULL, 
        'SALDO-P' SMALLINT(6) DEFAULT NULL,
        'MONEDA-P' TINYINT(2) DEFAULT NULL,
        'FECELI-P' INT(8) DEFAULT NULL,
        'FECAGO-P' INT(8) DEFAULT NULL,
        'PREFER-P' BIT NOT NULL,
        'FECPRE-P' INT(8) DEFAULT NULL,
        'DIGPRE-P' BIT DEFAULT NULL,
        'CODBASE-P' VARCHAR(20) NOT NULL,
        'CODMARCA-P' VARCHAR(15) NOT NULL,
        'MARCA-P' INT(4) DEFAULT NULL,
        'SWFOTO-P' INT(1) DEFAULT NULL,
        PRIMARY KEY('CODPRO-P'),
        INDEX ('NOMBRE-P'),
        INDEX ('PREFER-P'),
        INDEX ('RUBRO-P'),
        INDEX ('SUBRUB-P'),
        INDEX ('CODBASE-P'),
        INDEX ('CODMARCA-P)) TYPE = MyISAM"
;
  if (@
mysql_db_query($base$sql$db)) 
  {
    
cargararchivo();
  } 
  else 
 {
    echo 
"<h2 align='center'>No se ha podido crear la tabla</h2>";
    exit();
  }
?>
Alguna idea donde podria estar el problema.
Culaquier cooperacion se agradece.
  #2 (permalink)  
Antiguo 06/11/2008, 07:56
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Sabadell
Mensajes: 4.897
Antigüedad: 16 años, 1 mes
Puntos: 574
Respuesta: Creacion y Carga de Datos en tabla.

Habria que ver varias cosas:

'abcde', 'xyz' los permisos del usuario, ¿tiene abcde permiso para crear una tabla?

Ya en php porque usas

mysql_query( $sql, $db );

para hacer el DROP y

@mysql_db_query($base, $sql, $db)

para el CREATE?

esto segundo es php no bbdd.

Quim
  #3 (permalink)  
Antiguo 06/11/2008, 08:17
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, 5 meses
Puntos: 2658
Respuesta: Creacion y Carga de Datos en tabla.

La sintaxis tiene algunos errores. No debes usar palabras o caractreres reservados (como el signo "-"), no es buena idea. Pero si los usas debes ponerlo entre acentos graves y no entre apóstrfes:
Código sql:
Ver original
  1. CREATE TABLE  `t1` (
  2.   `RUBRO-P` INT(2) NOT NULL,
  3.   `SUBRUB-P` INT(2) NOT NULL,
  4.   `CODPRO-P` VARCHAR(15) NOT NULL,
  5.   `NOMBRE-P` VARCHAR(40) NOT NULL,
  6.   `TIPPRO-P` CHAR(1) DEFAULT NULL,
  7.   `SALDO-P` SMALLINT(6) DEFAULT NULL,
  8.   `MONEDA-P` tinyint(2) DEFAULT NULL,
  9.   `FECELI-P` INT(8) DEFAULT NULL,
  10.   `FECAGO-P` INT(8) DEFAULT NULL,
  11.   `PREFER-P` bit(1) NOT NULL,
  12.   `FECPRE-P` INT(8) DEFAULT NULL,
  13.   `DIGPRE-P` bit(1) DEFAULT NULL,
  14.   `CODBASE-P` VARCHAR(20) NOT NULL,
  15.   `CODMARCA-P` VARCHAR(15) NOT NULL,
  16.   `MARCA-P` INT(4) DEFAULT NULL,
  17.   `SWFOTO-P` INT(1) DEFAULT NULL,
  18.   PRIMARY KEY  (`CODPRO-P`),
  19.   KEY `NOMBRE-P` (`NOMBRE-P`),
  20.   KEY `PREFER-P` (`PREFER-P`),
  21.   KEY `RUBRO-P` (`RUBRO-P`),
  22.   KEY `SUBRUB-P` (`SUBRUB-P`),
  23.   KEY `CODBASE-P` (`CODBASE-P`),
  24.   KEY `CODMARCA-P` (`CODMARCA-P`)
  25. ) ENGINE=MyISAM ;

Procura no poner código de PHP o de cualquier otro lenguaje. Estás posteando en el Foro de Bases de Datos y aquí sólo vale SQL. Al usar otro código no es posible determinar si el error está en el SQL o en el otro...
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
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 11:44.