Crear tablas MySQL

Para empezar, el comando de creación de tablas requiere los siguientes detalles:

  • Nombre de la mesa
  • Nombre de los campos
  • Definiciones para cada campo

Sintaxis

Aquí hay una sintaxis SQL genérica para crear una tabla MySQL:

CREATE TABLE table_name (column_name column_type);

Ahora, crearemos la siguiente tabla en el TUTORIALS base de datos.

create table tutorials_tbl(
   tutorial_id INT NOT NULL AUTO_INCREMENT,
   tutorial_title VARCHAR(100) NOT NULL,
   tutorial_author VARCHAR(40) NOT NULL,
   submission_date DATE,
   PRIMARY KEY ( tutorial_id )
);

Aquí, algunos elementos necesitan explicación:

  • Atributo de campo NOT NULLse está utilizando porque no queremos que este campo sea NULL. Entonces, si un usuario intenta crear un registro con un valor NULL, entonces MySQL generará un error.

  • Atributo de campo AUTO_INCREMENT le dice a MySQL que siga adelante y agregue el siguiente número disponible al campo de identificación.

  • Palabra clave PRIMARY KEYse utiliza para definir una columna como clave principal. Puede utilizar varias columnas separadas por una coma para definir una clave principal.

Crear tablas desde el símbolo del sistema

Es fácil crear una tabla MySQL desde el indicador mysql>. Usarás el comando SQLCREATE TABLE para crear una mesa.

Ejemplo

Aquí hay un ejemplo, que creará tutorials_tbl -

root@host# mysql -u root -p
Enter password:*******
mysql> use TUTORIALS;
Database changed
mysql> CREATE TABLE tutorials_tbl(
   -> tutorial_id INT NOT NULL AUTO_INCREMENT,
   -> tutorial_title VARCHAR(100) NOT NULL,
   -> tutorial_author VARCHAR(40) NOT NULL,
   -> submission_date DATE,
   -> PRIMARY KEY ( tutorial_id )
   -> );
Query OK, 0 rows affected (0.16 sec)
mysql>

NOTE - MySQL no finaliza un comando hasta que le da un punto y coma (;) al final del comando SQL.

Creando tablas usando PHP Script

Para crear una nueva tabla en cualquier base de datos existente, necesitaría usar la función PHP mysql_query(). Pasará su segundo argumento con un comando SQL adecuado para crear una tabla.

Ejemplo

El siguiente programa es un ejemplo para crear una tabla usando un script PHP:

<html>
   <head>
      <title>Creating MySQL Tables</title>
   </head>
   
   <body>
      <?php
         $dbhost = 'localhost:3036';
         $dbuser = 'root';
         $dbpass = 'rootpassword';
         $conn = mysql_connect($dbhost, $dbuser, $dbpass);
         
         if(! $conn ) {
            die('Could not connect: ' . mysql_error());
         }
         echo 'Connected successfully<br />';
         $sql = "CREATE TABLE tutorials_tbl( ".
            "tutorial_id INT NOT NULL AUTO_INCREMENT, ".
            "tutorial_title VARCHAR(100) NOT NULL, ".
            "tutorial_author VARCHAR(40) NOT NULL, ".
            "submission_date DATE, ".
            "PRIMARY KEY ( tutorial_id )); ";
         mysql_select_db( 'TUTORIALS' );
         $retval = mysql_query( $sql, $conn );
         
         if(! $retval ) {
            die('Could not create table: ' . mysql_error());
         }
         echo "Table created successfully\n";
         mysql_close($conn);
      ?>
   </body>
</html>