PHP MySQL Create Database and Tables
A database holds one
or multiple tables.
Create a Database
The CREATE DATABASE statement is used to create a database in MySQL.
Syntax
CREATE DATABASE database_name
|
To get PHP to execute the statement above we must use the mysql_query() function. This function is used to
send a query or command to a MySQL connection.Example
In the following example we create a database called "my_db":
<?php
$con = mysql_connect("localhost","peter","abc123");
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
if (mysql_query("CREATE DATABASE my_db",$con))
{
echo "Database created";
}
else
{
echo "Error creating database: " . mysql_error();
}
mysql_close($con);
?>
|
Create a Table
The CREATE TABLE statement is used to create a database table in MySQL.
Syntax
CREATE TABLE table_name
(
column_name1 data_type,
column_name2 data_type,
column_name3 data_type,
.......
)
|
We must add the CREATE TABLE statement to the mysql_query() function to
execute the command.
Example
The following example shows how you can create a table named "person", with
three columns. The column names will be "FirstName", "LastName" and
"Age":
<?php
$con = mysql_connect("localhost","peter","abc123");
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
// Create database
if (mysql_query("CREATE DATABASE my_db",$con))
{
echo "Database created";
}
else
{
echo "Error creating database: " . mysql_error();
}
// Create table in my_db database
mysql_select_db("my_db", $con);
$sql = "CREATE TABLE person
(
FirstName varchar(15),
LastName varchar(15),
Age int
)";
mysql_query($sql,$con);
mysql_close($con);
?>
|
Important: A database must be selected before a table can be created.
The database is selected with the mysql_select_db() function.
Note: When you create a database field of type varchar, you must
specify the maximum length
of the field, e.g. varchar(15).
MySQL Data Types
Below are the different MySQL data types that can be used:
| Numeric Data Types |
Description |
int(size)
smallint(size)
tinyint(size)
mediumint(size)
bigint(size) |
Hold integers only. The maximum number of digits can be
specified in the size parameter |
decimal(size,d)
double(size,d)
float(size,d) |
Hold numbers with fractions. The maximum number of digits
can be specified in the size parameter. The maximum number of digits to the right of the
decimal is specified in the d parameter |
| Textual Data Types |
Description |
| char(size) |
Holds a fixed length string (can contain letters, numbers,
and special characters). The fixed size is specified in parenthesis |
| varchar(size) |
Holds a variable length string (can contain letters,
numbers, and special characters). The maximum size is specified in
parenthesis |
| tinytext |
Holds a variable string with a maximum length of 255
characters |
text
blob |
Holds a variable string with a maximum length of 65535
characters |
mediumtext
mediumblob |
Holds a variable string with a maximum length of 16777215
characters |
longtext
longblob |
Holds a variable string with a maximum length of 4294967295
characters |
| Date Data Types |
Description |
date(yyyy-mm-dd)
datetime(yyyy-mm-dd hh:mm:ss)
timestamp(yyyymmddhhmmss)
time(hh:mm:ss) |
Holds date and/or time |
| Misc. Data Types |
Description |
| enum(value1,value2,ect) |
ENUM is short for ENUMERATED list. Can store one of up to
65535 values listed within the ( ) brackets. If a value is inserted that is
not in the list, a blank value will be inserted |
| set |
SET is similar to ENUM. However, SET can have up to 64 list
items and can store more than one choice |
Primary Keys and Auto Increment Fields
Each table should have a
primary key field.
A primary key is used to uniquely identify the rows in a table. Each primary
key value must be unique within the table. Furthermore, the primary key field
cannot be null because the database engine requires a value to locate the
record.
The primary key field is always indexed. There is no exception to this rule!
You must index the primary key field so the database engine can quickly locate
rows based on the key's value.
The following example sets the personID field as the primary key field. The primary key field is often an ID number, and is often used with the
AUTO_INCREMENT setting. AUTO_INCREMENT automatically increases the value of the field
by 1 each time a new
record is added. To ensure that the primary key field cannot be null, we must add the NOT NULL
setting to the field.
Example
$sql = "CREATE TABLE person
(
personID int NOT NULL AUTO_INCREMENT,
PRIMARY KEY(personID),
FirstName varchar(15),
LastName varchar(15),
Age int
)";
mysql_query($sql,$con);
|
The Ektron Intranet
lets you do everything you need to do on your corporate intranet and everything you want to do... all with just one application.
What can you do with the Ektron Intranet? |

|
Navigate through content, documents, assets, colleagues and workgroups quickly and intuitively with enterprise search |

|
Communicate with friends and colleagues with forums, message boards and corporate blogging using the new Social Networking Platform |

|
Promote collaboration among coworkers in your organization through project workspaces where others can efficiently find information and work together |

|
Personalize your company profile by bookmarking and organizing favorite content, uploading assets, posting photos, blogging, and more |

|
Interact with features like tagging, flagging, wikis and ratings found in the Web 2.0 Toolbox |
 |
Author/edit content, manage navigation, menus, audit trails, workflow and approvals with the best in breed Content Management |
|
|
|
|
See why there are 20,000+ Ektron integrations worldwide. Request an
INSTANT DEMO or download a
FREE TRIAL today. |
|