PHP skapar MySQL-databas
- 上一页 MySQL Connect
- 下一页 MySQL Insert
Databasen innehåller en eller flera tabeller.
Skapa databas
CREATE DATABASE-satsen används för att skapa databaser i MySQL.
Syntaks
CREATE DATABASE databasnamn
För att PHP ska kunna utföra ovanstående sats måste vi använda mysql_query() -funktionen. Denna funktion används för att skicka frågor eller kommandon till en MySQL-anslutning.
例子
I följande exempel skapar vi en databas med namnet "my_db":
<?php $con = mysql_connect("localhost","peter","abc123"); om (!$con) { dö (": kunde inte ansluta: ". mysql_error()); } om (mysql_query("CREATE DATABASE my_db",$con)) { echo "Databas skapad"; } annars { echo "Fel vid skapande av databas: " . mysql_error(); } mysql_close($con); ?>
Skapa tabell
CREATE TABLE används för att skapa databastabeller i MySQL.
Syntaks
CREATE TABLE table_name ( column_name1 data_type, column_name2 data_type, column_name3 data_type, ...... )
För att utföra detta kommando måste jag lägga till CREATE TABLE-satsen till mysql_query() -funktionen.
例子
Nedanstående exempel visar hur man skapar en tabell med namnet "Persons", som har tre kolumner. Kolonnenamn är "FirstName", "LastName" och "Age":
<?php $con = mysql_connect("localhost","peter","abc123"); om (!$con) { dö (": kunde inte ansluta: ". mysql_error()); } // Skapa databas om (mysql_query("CREATE DATABASE my_db",$con)) { echo "Databas skapad"; } annars { echo "Fel vid skapande av databas: " . mysql_error(); } // Skapa tabell i my_db databas 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); ?>
Viktigt:Viktigt: Innan du skapar en tabell måste du först välja databas. Välj databas med mysql_select_db() funktionen.
Anmärkning:När du skapar ett varchar-fält i databasen måste du specificera fältets maxlängd, till exempel: varchar(15).
MySQL datatyper
Följande MySQL datatyper som kan användas:
numeriska typer | 描述 |
---|---|
|
endast stödjer heltal. Ställer in maxvärdet för siffror i size-argumentet. |
|
stödjer tal med decimaler. ställer in maxvärdet för siffror i size-argumentet. Ställer in maxvärdet för decimaler till höger om decimaltecknet i d-argumentet. |
textdata typ | 描述 |
---|---|
char(size) |
stödjer strängar med fast längd. (Kan innehålla bokstäver, siffror och specialtecken). ställer in fast längd i size-argumentet. |
varchar(size) |
stödjer strängar med variabel längd. (Kan innehålla bokstäver, siffror och specialtecken). ställer in maxlängd i size-argumentet. |
tinytext | stödjer strängar med variabel längd, maxlängd är 255 tecken. |
|
stödjer strängar med variabel längd, maxlängd är 65535 tecken. |
|
stödjer strängar med variabel längd, maxlängd är 16777215 tecken. |
|
stödjer strängar med variabel längd, maxlängd är 4294967295 tecken. |
datumdata typ | 描述 |
---|---|
|
支持日期或时间 |
杂项数据类型 | 描述 |
---|---|
enum(value1,value2,ect) | ENUM 是 ENUMERATED 列表的缩写。可以在括号中存放最多 65535 个值。 |
set | SET 与 ENUM 相似。但是,SET 可拥有最多 64 个列表项目,并可存放不止一个 choice |
主键和自动递增字段
每个表都应有一个主键字段。
主键用于对表中的行进行唯一标识。每个主键值在表中必须是唯一的。此外,主键字段不能为空,这是由于数据库引擎需要一个值来对记录进行定位。
主键字段永远要被编入索引。这条规则没有例外。你必须对主键字段进行索引,这样数据库引擎才能快速定位给予该键值的行。
下面的例子把 personID 字段设置为主键字段。主键字段通常是 ID 号,且通常使用 AUTO_INCREMENT 设置。AUTO_INCREMENT 会在新记录被添加时逐一增加该字段的值。要确保主键字段不为空,我们必须向该字段添加 NOT NULL 设置。
例子
$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);
- 上一页 MySQL Connect
- 下一页 MySQL Insert