標題:
9-2 使用DDL指令(9-2-1 建立與卸除資料庫)
[打印本頁]
作者:
小誌
時間:
2011-4-21 19:12
標題:
9-2 使用DDL指令(9-2-1 建立與卸除資料庫)
9-2 使用DDL指令
DDL:資料定義語言(Data Definition Language),用來建立與刪除資料庫、資料表…等的SQL指令群。
9-2-1 建立與卸除資料庫
要在前端的PHP程式中建立後端MySQL Server控管的新資料庫,可以使用DDL指令群中的「Create」指令:
創建資料庫
Create DataBase 新資料庫名
複製代碼
例如:利用前端PHP程式中的mysql_query()函數執行Create Database指令,於後端MySQL Server新增一個名為「PHP測試」的新資料庫:
[attach]5698[/attach]
圖9-20 範例ex09_09.php,利用前端PHP建立「PHP測試」的新資料庫。
ex09_09.php
<?
$conn = mysql_connect("localhost", "root", "12345a");
//指定校對字元表
mysql_query("set character set big5");
//建立SQL命令字串
$SQL="Create Database PHP測試";
//執行資料庫建立
mysql_query($SQL);
?>
複製代碼
作者:
小誌
時間:
2011-4-21 19:12
要在後端MySQL Server中建立新資料庫,也就是使用CREATE DATABASE指令,權限是預設給「root」資料庫系統管理者,因此,並非每個登入MySQL Serve的帳號都可以建立新資料庫,也就是用不同的登入帳號就有不同存取資料和執行功能的權限。
[attach]5699[/attach]
圖9-21 在phpMyAdmin中的權限管理。
在範例ex09_9.php中,我們使用的登入帳號為「root(系統管理者)」,因此擁有最大的MySQL Server使用權限,所以能在後端MySQL Server中建立新資料庫,筆者建議您,如果要讓別人使用您的MySQL Server機器,最好建立一個有權限限制的帳號,不要將系統管理者帳號與密碼隨便交給別人使用!
作者:
小誌
時間:
2011-4-21 19:13
除了以mysql_query()函數執行Create Database指令可以建立新資料庫外,PHP亦提供了一個建立新資料庫的函數mysql_create_db():
mysql_create_db() 函數
int mysql_create_db ( string name , int [link_identifier])
複製代碼
name參數是必須的,也就是要給定新增資料庫的名稱,link_identifier參數則可省略,在mysql_create_db()函數執行時會自動找尋最近由mysql_connect()函數所建立的連線。
例如:
ex09_10.php
<?
$conn = mysql_connect("localhost", "root", "12345a");
//指定校對字元表
mysql_query("set character set big5");
//執行資料庫建立
$result=mysql_create_db("mydatabase");
?>
複製代碼
注意:
在MySQL4.x版本中並不支援PHP的mysql_create_db()函數。
作者:
小誌
時間:
2011-4-21 19:14
要透過前端PHP程式中的mysql_query()函數卸除後端MySQL Server中的資料庫可以使用使用DDL指令群中的「Drop」指令:
卸離資料庫
Drop DataBase 資料庫名
複製代碼
例如:卸除範例ex09_11.php於後端MySQL Server新增的「PHP測試」資料庫:
ex09_11.php
<?
$conn = mysql_connect("localhost", "root", "12345a");
//指定校對字元表
mysql_query("set character set big5");
//建立SQL命令字串
$SQL="DROP DataBase php測試";
//執行資料庫卸除
mysql_query($SQL);
?>
複製代碼
作者:
小誌
時間:
2011-4-21 19:15
除了以mysql_query()函數執行Drop Database指令可以建立新資料庫外,PHP亦提供了一個建立新資料庫的函數mysql_Drop_db():
mysql_drop_db() 函數
int mysql_drop_db ( string name , int [link_identifier])
複製代碼
name參數是必須的,也就是要給定想要的資料庫的名稱,link_identifier參數則可省略,在mysql_drop_db()函數執行時會自動找尋最近由mysql_connect()函數所建立的連線。
例如:
ex09_12.php
<?
$conn = mysql_connect("localhost", "root", "12345a");
//指定校對字元表
mysql_query("set character set big5");
//執行資料庫刪除
$result=mysql_drop_db("mydatabase");
?>
複製代碼
注意:
在MySQL4.x版本中並不支援PHP的mysql_drop_db()函數。
歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)