PHP – MYSQL – Create a Table

1. You can create a table using phpMyAdmin

Blue Host users:

CPanel> phpMyAdmin> Enter with User name and password

LEFT COLUMN> you will see ‘Create Table’ button

2. You can create a table using PHP script

<?php
// Create connection
// Statement: mysqli_connect(host,username,password,dbname)
// NOTICE: se lo script è installato nello stesso server del Data Base, host->localhost
$con=mysqli_connect("localhost","lucedigi_user","mypassword","lucedigi_testphp");

// Check connection
if (mysqli_connect_errno())
  {
  echo "Failed to connect to MySQL: " . mysqli_connect_error();
  }
else
  {
  echo "Great! Connect to MySQL!";
  }
  
// Create table
$sql="CREATE TABLE Persons(FirstName CHAR(30),LastName CHAR(30),Age INT)";

// Execute query
if (mysqli_query($con,$sql))
  {
  echo "Table persons created successfully";
  }
else
  {
  echo "Error creating table: " . mysqli_error($con);
  }
?>

Execute the script and check the Database with phpMyAdmin, you will see on TOP LEFT a small icon with a GREEN ARROW that will refreshes the table list.

Click over the new Table ‘Persons’, you must see:

– a table named “Persons”
– three columns: “FirstName” – “LastName” – “Age”

AN ERROR MESSAGE: Nessun indice definito!

Ogni tabella necessita di un indice UNIVOCO per identificare le righe in una tabella.
Per creare una tabella con un indice possiamo utilizzare il seguente codice:

$sql = "CREATE TABLE Persons 
(
PID INT NOT NULL AUTO_INCREMENT, 
PRIMARY KEY(PID),
FirstName CHAR(15),
LastName CHAR(15),
Age INT
)";

Eliminiamo la tabella da phpMyAdmin:
phpMyAdmin> In ALTO localhost> lucedigi_testphp> spuntiamo la tabella> ‘Elimina’ il messaggio di conferma sarà “Drop Table…”> OK

Eseguiamo lo script:

<?php
// Create connection
// Statement: mysqli_connect(host,username,password,dbname)
// NOTICE: se lo script è installato nello stesso server del Data Base, host->localhost
$con=mysqli_connect("localhost","lucedigi_user","mypassword","lucedigi_testphp");

// Check connection
if (mysqli_connect_errno())
  {
  echo "Failed to connect to MySQL: " . mysqli_connect_error();
  }
else
  {
  echo "Great! Connect to MySQL!";
  }
  
// Create table with an INDEX
// PID is: Primary Key ID
// it is an INT integer number
// it is not NULL
// AUTO_INCREMENT automatically increases the value of the field by 1 each time a new record is added.
$sql = "CREATE TABLE Persons 
(
PID INT NOT NULL AUTO_INCREMENT, 
PRIMARY KEY(PID),
FirstName CHAR(15),
LastName CHAR(15),
Age INT
)";

// Execute query
if (mysqli_query($con,$sql))
  {
  echo "Table Persons created successfully";
  }
else
  {
  echo "Error creating table: " . mysqli_error($con);
  }
?>

Controllare il database with phpMyAdmin: il messaggio di errore è scomparso, sotto è stata aggiunta la voce ‘Indice’ dove la chiave primaria è il ‘Campo’ ‘PID’