Creating and Selecting a Database

Before you do anything with a database, you need to create and select it. Whether you can do this depends on the database permission of the user connecting to MySQL.

Use mysql_query('CREATE DATABASE databasename') to create the database. Use mysql_select_db('databasename') to select the database.

You only need to create a database once, but it must always be selected before any other queries are run on it.

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="EN" lang="EN">
<head>
<title>Creating and Selecting a Database</title>
<meta Name="Author" Content="Hann So">
</head>
<body>
<p>
<?php

if (isset($_POST['submit'])) {
		process_form();
	}
	else {
		display_form();// display form for the first time
	}

function display_form() {
	echo <<<HTML
	<h2>Selecting a Database</h2>
	<form action = "$_SERVER[SCRIPT_NAME]" method="post">
	Username:
	<input type="text" name="username" size="50" value="hann" />
	<br />
	Password:
	<input type="password" name="password" size="50" />
	<br />
	<input type="submit" name="submit" value="Submit" />
	</form>
HTML;
}

function process_form() {

	DEFINE ('DB_USER', "$_POST[username]");
	DEFINE ('DB_PASSWORD', "$_POST[password]");
	DEFINE ('DB_HOST', "localhost");
	DEFINE ('DB_NAME', "myblog");

	echo "<p>Opening the connection to the database server.</p>";
	if ($link = mysql_connect(DB_HOST, DB_USER, DB_PASSWORD)) {
		echo "<p>The connection worked. The link is $link</p>";
		// create a database
		if (@mysql_query('CREATE DATABASE DB_NAME')) {
			echo "<p>The database ", DB_NAME, " has been created.</p>";
		}
		else {
			die ("<p>Could not create the database because: ". mysql_error(). "</p>");
		}

		// select a database
		if (@mysql_select_db(DB_NAME)) {
			echo "<P>The database", DB_NAME, " has been selected.</p>";
		}
		else {
			die ("<p>Could not select the database because: ". mysql_error(). "</p>");
		}

		// close the connection
		mysql_close($link);
	}
	else {
		die ("<p>Could not connect to MySQL because: ". mysql_error(). "</p>");
	}
	echo "<p><a href=\"$_SERVER[SCRIPT_NAME]\">Try again?</a></p>\n";

}

?>
</p>
</body>
</html>

View the effect

The database was already created. So you need to just select it.

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="EN" lang="EN">
<head>
<title>Creating and Selecting a Database</title>
<meta Name="Author" Content="Hann So">
</head>
<body>
<p>
<?php

if (isset($_POST['submit'])) {
		process_form();
	}
	else {
		display_form();// display form for the first time
	}

function display_form() {
	echo <<<HTML
	<h2>Creating and Selecting a Database</h2>
	<form action = "$_SERVER[SCRIPT_NAME]" method="post">
	Username:
	<input type="text" name="username" size="50" value="hann" />
	<br />
	Password:
	<input type="password" name="password" size="50" />
	<br />
	<input type="submit" name="submit" value="Submit" />
	</form>
HTML;
}

function process_form() {

	DEFINE ('DB_USER', "$_POST[username]");
	DEFINE ('DB_PASSWORD', "$_POST[password]");
	DEFINE ('DB_HOST', "localhost");
	DEFINE ('DB_NAME', "hann_db");

	echo "<p>Opening the connection to the database server.</p>";
	if ($link = mysql_connect(DB_HOST, DB_USER, DB_PASSWORD)) {
		echo "<p>The connection worked. The link is $link</p>";

		// select a database
		if (@mysql_select_db(DB_NAME)) {
			echo "<P>The database ", DB_NAME, " has been selected.</p>";
		}
		else {
			die ("<p>Could not select the database because: ". mysql_error(). "</p>");
		}

		// close the connection
		mysql_close($link);
	}
	else {
		die ("<p>Could not connect to MySQL because: ". mysql_error(). "</p>");
	}
	echo "<p><a href=\"$_SERVER[SCRIPT_NAME]\">Try again?</a></p>\n";

}

?>
</p>
</body>
</html>

View the effect


PHP and MySQL | Introduction | SQL Commands | Connect to MySQL | Creating and Selecting a Database | Creating a Table | Inserting Data into a Database | Retrieving Data from a Database | Updating data in a Database | Deleting Data in a Database
© 2008: Hann So
email: hso@voyager.deanza.edu