una tabla modificar insertar fila eliminar datos columna campo agregar php mysql add alter

php - tabla - insertar datos en mysql workbench



Cómo agregar una nueva columna a la tabla MYSQL (7)

Algo como:

$db = mysqli_connect("localhost", "user", "password", "database"); $name = $db->mysqli_real_escape_string($name); $query = ''ALTER TABLE assesment ADD '' . $name . '' TINYINT NOT NULL DEFAULT /'0/'''; if($db->query($query)) { echo "It worked"; }

No lo he probado, pero debería funcionar.

Estoy tratando de agregar una nueva columna a mi tabla MYSQL utilizando PHP. No estoy seguro de cómo modificar mi tabla para que se cree la nueva columna. En mi tabla de evaluación tengo

assessmentid | q1 | q2 | q3 | q4 | q5

Digamos que tengo una página con un cuadro de texto y escribo q6 en el cuadro de texto y presiono un botón, luego la tabla se actualiza para

assessmentid | q1 | q2 | q3 | q4 | q5 | q6

Gracias por adelantado

<?php include ''core/init.php''; include ''core/admininit.php''; include ''includes/overall/overall_header.php''; adminprotect_page(); include ''includes/adminmenu.php''; ?> <?php mysql_query("ALTER TABLE `assessment` ADD newq INT(1) NOT NULL AFTER `q10`"); ?> <h1>Input Career Name</h1> <form method="post" action=""> Career Name <input type="text" name="newq" size="20"> <input type="submit" name="submit" value="Submit"> </body> </html>


Debería buscar la normalización de su base de datos para evitar crear columnas en tiempo de ejecución.

Hacer 3 tablas:

  1. evaluación
  2. pregunta
  3. assessment_question (columnas assessmentId, questionId)

Coloque preguntas y evaluaciones en sus respectivas tablas y conéctelas mediante assessment_question utilizando claves externas.


Según su comentario, parece que solo está agregando la nueva columna si: mysql_query("SELECT * FROM assessment"); devuelve falso. Probablemente eso no es lo que querías. Intenta eliminar el ''!'' al frente de $ sql en la primera declaración ''if''. Entonces su código se verá así:

$sql=mysql_query("SELECT * FROM assessment"); if ($sql) { mysql_query("ALTER TABLE assessment ADD q6 INT(1) NOT NULL AFTER q5"); echo ''Q6 created''; }else...


para WORDPRESS:

global $wpdb; $your_table = $wpdb->prefix. ''My_Table_Name''; $your_column = ''My_Column_Name''; if (!in_array($your_column, $wpdb->get_col( "DESC " . $your_table, 0 ) )){ $result= $wpdb->query( "ALTER TABLE $your_table ADD $your_column VARCHAR(100) CHARACTER SET utf8 NOT NULL " //you can add positioning phraze: "AFTER My_another_column" );}


tu mesa:

q1 | q2 | q3 | q4 | q5

también puedes hacer

ALTER TABLE yourtable ADD q6 VARCHAR( 255 ) after q5


$table = ''your table name''; $column = ''q6'' $add = mysql_query("ALTER TABLE $table ADD $column VARCHAR( 255 ) NOT NULL");

puede cambiar VARCHAR( 255 ) NOT NULL en el datatype que desee.


  • Puede agregar una nueva columna al final de su tabla

    ALTER TABLE assessment ADD q6 VARCHAR( 255 )

  • Agregar columna al comienzo de la tabla

    ALTER TABLE assessment ADD q6 VARCHAR( 255 ) FIRST

  • Añadir columna al lado de una columna especificada

    ALTER TABLE assessment ADD q6 VARCHAR( 255 ) after q5

y más opciones here