Crea database MySQL usando PHP
Creazione di un database
Per creare ed eliminare un database è necessario disporre dei privilegi di amministratore. È molto facile creare un nuovo database MySQL. PHP utilizzamysql_queryfunzione per creare un database MySQL. Questa funzione accetta due parametri e restituisce TRUE in caso di successo o FALSE in caso di fallimento.
Sintassi
bool mysql_query( sql, connection );
Suor n | Parametro e descrizione |
---|---|
1 | sql Obbligatorio: query SQL per creare un database |
2 | connection Opzionale: se non specificato, verrà utilizzata l'ultima connessione aperta da mysql_connect. |
Esempio
Prova il seguente esempio per creare un database:
<?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';
$sql = 'CREATE Database test_db';
$retval = mysql_query( $sql, $conn );
if(! $retval ) {
die('Could not create database: ' . mysql_error());
}
echo "Database test_db created successfully\n";
mysql_close($conn);
?>
Selezione di un database
Una volta stabilita una connessione con un server di database, è necessario selezionare un database particolare a cui sono associate tutte le tabelle.
Ciò è necessario perché potrebbero esserci più database che risiedono su un singolo server e puoi lavorare con un singolo database alla volta.
PHP fornisce la funzione mysql_select_db per selezionare un database. Restituisce TRUE in caso di successo o FALSE in caso di fallimento.
Sintassi
bool mysql_select_db( db_name, connection );
Suor n | Parametro e descrizione |
---|---|
1 | db_name Obbligatorio: selezionare il nome del database |
2 | connection Opzionale: se non specificato, verrà utilizzata l'ultima connessione aperta da mysql_connect. |
Esempio
Ecco l'esempio che mostra come selezionare un database.
<?php
$dbhost = 'localhost:3036';
$dbuser = 'guest';
$dbpass = 'guest123';
$conn = mysql_connect($dbhost, $dbuser, $dbpass);
if(! $conn ) {
die('Could not connect: ' . mysql_error());
}
echo 'Connected successfully';
mysql_select_db( 'test_db' );
mysql_close($conn);
?>
Creazione di tabelle di database
Per creare tabelle nel nuovo database è necessario eseguire la stessa operazione della creazione del database. Prima crea la query SQL per creare le tabelle, quindi esegui la query utilizzando la funzione mysql_query ().
Esempio
Prova il seguente esempio per creare una tabella:
<?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';
$sql = 'CREATE TABLE employee( '.
'emp_id INT NOT NULL AUTO_INCREMENT, '.
'emp_name VARCHAR(20) NOT NULL, '.
'emp_address VARCHAR(20) NOT NULL, '.
'emp_salary INT NOT NULL, '.
'join_date timestamp(14) NOT NULL, '.
'primary key ( emp_id ))';
mysql_select_db('test_db');
$retval = mysql_query( $sql, $conn );
if(! $retval ) {
die('Could not create table: ' . mysql_error());
}
echo "Table employee created successfully\n";
mysql_close($conn);
?>
Nel caso in cui sia necessario creare molte tabelle, è meglio creare prima un file di testo e inserire tutti i comandi SQL in quel file di testo, quindi caricare quel file nella variabile $ sql ed eseguire quei comandi.
Considera il seguente contenuto nel file sql_query.txt
CREATE TABLE employee(
emp_id INT NOT NULL AUTO_INCREMENT,
emp_name VARCHAR(20) NOT NULL,
emp_address VARCHAR(20) NOT NULL,
emp_salary INT NOT NULL,
join_date timestamp(14) NOT NULL,
primary key ( emp_id ));
<?php
$dbhost = 'localhost:3036';
$dbuser = 'root';
$dbpass = 'rootpassword';
$conn = mysql_connect($dbhost, $dbuser, $dbpass);
if(! $conn ) {
die('Could not connect: ' . mysql_error());
}
$query_file = 'sql_query.txt';
$fp = fopen($query_file, 'r');
$sql = fread($fp, filesize($query_file));
fclose($fp);
mysql_select_db('test_db');
$retval = mysql_query( $sql, $conn );
if(! $retval ) {
die('Could not create table: ' . mysql_error());
}
echo "Table employee created successfully\n";
mysql_close($conn);
?>