PHP - duda con ALTER TABLE

   
Vista:

duda con ALTER TABLE

Publicado por carlos villarroel (2 intervenciones) el 21/11/2012 12:15:31
Hola a todos y de ante mano gracias, primero por tomarse el tiempo de leer esta lineas y segundo mas agradecido si me ayudan con la duda descripta en las lineas subsiguientes.

Aqui va, estoy usando ALTER TABLE para crear el nombre de las columnas segun los datos datos ingresados por el usuario, en este caso en un par MES-AÑO.
Bueno una vez que determino q ese para MES-AÑO y este no existe como un nombre de campo lo creo con ALTER TABLE. En eso no hay problemas. EL problema me aparece cuando al quiero insertar un registro en el campo con el nombre MES-AÑO que recien acabo de crear.
CODIGO:

$grabar = "ALTER TABLE fechas ADD COLUMN `$nombre_mes` DATE AFTER `$mes_anterior`";

mysql_query($grabar) or die(mysql_error());


$registro = "INSERT INTO fechas(`$existe_campo`) VALUE(`$fecha_formato`)";

mysql_query($registro) or die(mysql_error());

Esto es lo que trato de escribir y el posterior error:

ALTER TABLE fechas ADD COLUMN `FEBRERO-2012` DATE AFTER `ENERO-2012`

INSERT INTO fechas(`FEBRERO-2012`) VALUE(`2012-02-09`)

Unknown column '2012-02-09' in 'field list'

Sin mas, muchas gracias. Carlos
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

duda con ALTER TABLE

Publicado por Daniel Efrén (2 intervenciones) el 21/11/2012 12:50:48
Hola Carlos, no tengo muy que es lo que intentas hacer pero cuando realizas el insert de donde sacas la variable: $existe_campo
1
$registro = "INSERT INTO fechas(`$existe_campo`) VALUE(`$fecha_formato`)";


Deberías usar la variable que se llama como el campo que ha añadido a la tabla.

1
$registro = "INSERT INTO fechas(`$nombre_mes`) VALUE(`$fecha_formato`)";


Espero que eso solucione tu problema, saludos!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

duda con ALTER TABLE

Publicado por carlos villarroel (2 intervenciones) el 21/11/2012 14:12:17
hola daniel lo voy a probar pero como veras en realidad son distintas las variables pero son iguales en su contenido.
Lo que hace mi programita es que el usuario ingresa la fecha y toma el mes-año. Busca en la tabla fechas si ese par mes-año existe como nombre de un campo. Sino existe crea ese par mes-año con Alter Table ->
$grabar = "ALTER TABLE fechas ADD COLUMN `$nombre_mes` DATE AFTER `$mes_anterior`";

mysql_query($grabar) or die(mysql_error());

antes de escrbir en la BD muestro $grabar aparece esto:
ALTER TABLE fechas ADD COLUMN `FEBRERO-2012` DATE AFTER `ENERO-2012`

Luego quiero escribir un registro en ese campo recien creado:

$registro = "INSERT INTO fechas(`$existe_campo`) VALUE(`$fecha_formato`)";

mysql_query($registro) or die(mysql_error());

Muestro la variable $registro antes de escrbir en la BD:

INSERT INTO fechas(`FEBRERO-2012`) VALUE(`2012-02-09`)

Y este es el error que me aparece:

Unknown column '2012-02-09' in 'field list'

Como veras son distintas las varibles pero igual el contenido. Voy a probar lo que decis por ahi hay algun conflicto que desconozco.
Gracias, carlos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

duda con ALTER TABLE

Publicado por Daniel Efrén (2 intervenciones) el 21/11/2012 15:02:31
Acabo de ver que pones VALUE y es VALUES independientemente de los datos que quieras introducir. Sino es eso desconozco que puede estar causando el problema.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar