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’