PHP MySQL 創(chuàng)建數(shù)據(jù)庫和表-4.3PHP 數(shù)據(jù)庫
閱讀 ?·? 發(fā)布日期 2019-06-28 18:42 ?·? admin數(shù)據(jù)庫存有一個(gè)或多個(gè)表。
創(chuàng)建數(shù)據(jù)庫
CREATE DATABASE 語句用于在 MySQL 中創(chuàng)建數(shù)據(jù)庫。
語法
CREATE DATABASE database_name
為了讓 PHP 執(zhí)行上面的語句,我們必須使用 mysql_query() 函數(shù)。此函數(shù)用于向 MySQL 連接發(fā)送查詢或命令。
例子
在下面的例子中,我們創(chuàng)建了一個(gè)名為 "my_db" 的數(shù)據(jù)庫:
<?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);
?>
創(chuàng)建表
CREATE TABLE 用于在 MySQL 中創(chuàng)建數(shù)據(jù)庫表。
語法
CREATE TABLE table_name
(
column_name1 data_type,
column_name2 data_type,
column_name3 data_type,
.......
)
為了執(zhí)行此命令,我必須向 mysql_query() 函數(shù)添加 CREATE TABLE 語句。
例子
下面的例子展示了如何創(chuàng)建一個(gè)名為 "Persons" 的表,此表有三列。列名是 "FirstName", "LastName" 以及 "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 Persons
(
FirstName varchar(15),
LastName varchar(15),
Age int
)";
mysql_query($sql,$con);
mysql_close($con);
?>
重要事項(xiàng):在創(chuàng)建表之前,必須首先選擇數(shù)據(jù)庫。通過 mysql_select_db() 函數(shù)選取數(shù)據(jù)庫。
注釋:當(dāng)您創(chuàng)建 varchar 類型的數(shù)據(jù)庫字段時(shí),必須規(guī)定該字段的最大長度,例如:varchar(15)。
MySQL 數(shù)據(jù)類型
下面的可使用的各種 MySQL 數(shù)據(jù)類型:
數(shù)值類型 | 描述 |
---|---|
|
僅支持整數(shù)。在 size 參數(shù)中規(guī)定數(shù)字的最大值。 |
|
支持帶有小數(shù)的數(shù)字。 在 size 參數(shù)中規(guī)定數(shù)字的最大值。在 d 參數(shù)中規(guī)定小數(shù)點(diǎn)右側(cè)的數(shù)字的最大值。 |
文本數(shù)據(jù)類型 | 描述 |
---|---|
char(size) |
支持固定長度的字符串。(可包含字母、數(shù)字以及特殊符號(hào))。 在 size 參數(shù)中規(guī)定固定長度。 |
varchar(size) |
支持可變長度的字符串。(可包含字母、數(shù)字以及特殊符號(hào))。 在 size 參數(shù)中規(guī)定最大長度。 |
tinytext | 支持可變長度的字符串,最大長度是 255 個(gè)字符。 |
|
支持可變長度的字符串,最大長度是 65535 個(gè)字符。 |
|
支持可變長度的字符串,最大長度是 16777215 個(gè)字符。 |
|
支持可變長度的字符串,最大長度是 4294967295 個(gè)字符。 |
日期數(shù)據(jù)類型 | 描述 |
---|---|
|
支持日期或時(shí)間 |
雜項(xiàng)數(shù)據(jù)類型 | 描述 |
---|---|
enum(value1,value2,ect) | ENUM 是 ENUMERATED 列表的縮寫。可以在括號(hào)中存放最多 65535 個(gè)值。 |
set | SET 與 ENUM 相似。但是,SET 可擁有最多 64 個(gè)列表項(xiàng)目,并可存放不止一個(gè) choice |
主鍵和自動(dòng)遞增字段
每個(gè)表都應(yīng)有一個(gè)主鍵字段。
主鍵用于對表中的行進(jìn)行唯一標(biāo)識(shí)。每個(gè)主鍵值在表中必須是唯一的。此外,主鍵字段不能為空,這是由于數(shù)據(jù)庫引擎需要一個(gè)值來對記錄進(jìn)行定位。
主鍵字段永遠(yuǎn)要被編入索引。這條規(guī)則沒有例外。你必須對主鍵字段進(jìn)行索引,這樣數(shù)據(jù)庫引擎才能快速定位給予該鍵值的行。
下面的例子把 personID 字段設(shè)置為主鍵字段。主鍵字段通常是 ID 號(hào),且通常使用 AUTO_INCREMENT 設(shè)置。AUTO_INCREMENT 會(huì)在新記錄被添加時(shí)逐一增加該字段的值。要確保主鍵字段不為空,我們必須向該字段添加 NOT NULL 設(shè)置。
例子
$sql = "CREATE TABLE Persons
(
personID int NOT NULL AUTO_INCREMENT,
PRIMARY KEY(personID),
FirstName varchar(15),
LastName varchar(15),
Age int
)";
mysql_query($sql,$con);
為您推薦
- 襯塑管網(wǎng)站建設(shè)_網(wǎng)頁定制制作與開發(fā) 2020-01-12
- 保溫管網(wǎng)站建設(shè)_網(wǎng)頁定制制作與開發(fā) 2020-01-12
- 玻璃管網(wǎng)站建設(shè)_網(wǎng)頁定制制作與開發(fā) 2020-01-12
- 鍍鋅方矩管網(wǎng)站建設(shè)_網(wǎng)頁定制制作與 2020-01-12
- PVC管材網(wǎng)站建設(shè)_網(wǎng)頁定制制作與開發(fā) 2020-01-12