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:
- evaluación
- pregunta
- 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