麻辣家族討論版版's Archiver

小誌 發表於 2011-4-21 19:12

9-2 使用DDL指令(9-2-1 建立與卸除資料庫)

[color=DarkRed][size=4][b]9-2   使用DDL指令[/b][/size][/color]
DDL:資料定義語言(Data Definition Language),用來建立與刪除資料庫、資料表…等的SQL指令群。


[color=DarkRed][size=4][b]9-2-1   建立與卸除資料庫[/b][/size][/color]
要在前端的PHP程式中建立後端MySQL Server控管的新資料庫,可以使用DDL指令群中的「Create」指令:
創建資料庫[code]Create DataBase 新資料庫名[/code]例如:利用前端PHP程式中的mysql_query()函數執行Create Database指令,於後端MySQL Server新增一個名為「PHP測試」的新資料庫:
[attach]5698[/attach]
圖9-20  範例ex09_09.php,利用前端PHP建立「PHP測試」的新資料庫。

ex09_09.php[code]<?
    $conn = mysql_connect("localhost", "root", "12345a");
      //指定校對字元表
      mysql_query("set character set big5");
      //建立SQL命令字串
      $SQL="Create Database PHP測試";
      //執行資料庫建立
      mysql_query($SQL);
?>[/code]

小誌 發表於 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():
[color=Magenta]mysql_create_db() 函數[/color][code]int mysql_create_db ( string name , int [link_identifier])[/code]name參數是必須的,也就是要給定新增資料庫的名稱,link_identifier參數則可省略,在mysql_create_db()函數執行時會自動找尋最近由mysql_connect()函數所建立的連線。
例如:[code]ex09_10.php
<?
    $conn = mysql_connect("localhost", "root", "12345a");
      //指定校對字元表
      mysql_query("set character set big5");
      //執行資料庫建立
    $result=mysql_create_db("mydatabase");
?>[/code][color=Red]注意:[/color]在MySQL4.x版本中並不支援PHP的mysql_create_db()函數。

小誌 發表於 2011-4-21 19:14

要透過前端PHP程式中的mysql_query()函數卸除後端MySQL Server中的資料庫可以使用使用DDL指令群中的「Drop」指令:
[color=Magenta]卸離資料庫[/color][code]Drop DataBase 資料庫名[/code]例如:卸除範例ex09_11.php於後端MySQL Server新增的「PHP測試」資料庫:
ex09_11.php[code]<?
    $conn = mysql_connect("localhost", "root", "12345a");
      //指定校對字元表
      mysql_query("set character set big5");
      //建立SQL命令字串
      $SQL="DROP DataBase php測試";
      //執行資料庫卸除
     mysql_query($SQL);
?>[/code]

小誌 發表於 2011-4-21 19:15

除了以mysql_query()函數執行Drop Database指令可以建立新資料庫外,PHP亦提供了一個建立新資料庫的函數mysql_Drop_db():
[color=Magenta]mysql_drop_db() 函數[/color][code]int mysql_drop_db ( string name , int [link_identifier])[/code]name參數是必須的,也就是要給定想要的資料庫的名稱,link_identifier參數則可省略,在mysql_drop_db()函數執行時會自動找尋最近由mysql_connect()函數所建立的連線。
例如:[code]ex09_12.php
<?
    $conn = mysql_connect("localhost", "root", "12345a");
      //指定校對字元表
      mysql_query("set character set big5");
      //執行資料庫刪除
    $result=mysql_drop_db("mydatabase");
?>[/code][color=Magenta]注意:[/color]在MySQL4.x版本中並不支援PHP的mysql_drop_db()函數。

頁: [1]

麻辣家族討論版版為 麻辣學園 網站成員  由 昱得資訊工作室 © Since 1993 所提供