欧美三区_成人在线免费观看视频_欧美极品少妇xxxxⅹ免费视频_a级毛片免费播放_鲁一鲁中文字幕久久_亚洲一级特黄

PHP 數據庫

系統 2906 0
PHP MySQL 簡介
MySQL 是最流行的開源數據庫服務器。
什么是 MySQL?
MySQL 是一種數據庫。數據庫定義了存儲信息的結構。

在數據庫中,存在著一些表。類似 HTML 表格,數據庫表含有行、列以及單元。

在分類存儲信息時,數據庫非常有用。一個公司的數據庫可能擁有這些表:"Employees", "Products", "Customers" 以及 "Orders"。
數據庫表
數據庫通常包含一個或多個表。每個表都一個名稱(比如 "Customers" 或 "Orders")。每個表包含帶有數據的記錄(行)。

下面是一個名為 "Persons" 的表的例子:

PHP 數據庫

上面的表含有三個記錄(每個記錄是一個人)和四個列(LastName, FirstName, Address 以及 City)。
查詢
查詢是一種詢問或請求。

通過 MySQL,我們可以向數據庫查詢具體的信息,并得到返回的記錄集。

請看下面的查詢:
    
SELECT LastName FROM Persons

  

上面的查詢選取了 Persons 表中 LastName 列的所有數據,并返回類似這樣的記錄集:


下載 MySQL 數據庫
如果您的 PHP 服務器沒有 MySQL 數據庫,可以在此下載 MySQL:http://www.mysql.com/downloads/index.html

Facts About MySQL Database
關于 MySQL 的一點很棒的特性是,可以對它進行縮減,來支持嵌入的數據庫應用程序。也許正因如此,許多人認為 MySQL 僅僅能處理中小型的系統。

事實上,對于那些支持巨大數據和訪問量的網站,MySQL 是事實上的標準數據庫(比如 Friendster, Yahoo, Google)。這個地址提供了使用 MySQL 的公司的概覽:http://www.mysql.com/customers/。

PHP MySQL 連接數據庫
免費的 MySQL 數據庫通常是通過 PHP 來使用的。
連接到一個 MySQL 數據庫
在您能夠訪問并處理數據庫中的數據之前,您必須創建到達數據庫的連接。

在 PHP 中,這個任務通過 mysql_connect() 函數完成。

語法
    
mysql_connect(servername,username,password);

  

PHP 數據庫

注釋:雖然還存在其他的參數,但上面列出了最重要的參數。請訪問 W3School 提供的 PHP MySQL 參考手冊,獲得更多的細節信息。

例子
在下面的例子中,我們在一個變量中 ($con) 存放了在腳本中供稍后使用的連接。如果連接失敗,將執行 "die" 部分:
    
<?php
$con = mysql_connect("localhost","peter","abc123");
if (!$con)
  {
  die('Could not connect: ' . mysql_error());
  }

// some code

?>

  

關閉連接
腳本一結束,就會關閉連接。如需提前關閉連接,請使用 mysql_close() 函數。
    
<?php
$con = mysql_connect("localhost","peter","abc123");
if (!$con)
  {
  die('Could not connect: ' . mysql_error());
  }

// some code

mysql_close($con);
?>

  


PHP MySQL 創建數據庫和表
數據庫存有一個或多個表。
創建數據庫
CREATE DATABASE 語句用于在 MySQL 中創建數據庫。

語法
    
CREATE DATABASE database_name

  

為了讓 PHP 執行上面的語句,我們必須使用 mysql_query() 函數。此函數用于向 MySQL 連接發送查詢或命令。

例子
在下面的例子中,我們創建了一個名為 "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 TABLE 用于在 MySQL 中創建數據庫表。

語法
    
CREATE TABLE table_name
(
column_name1 data_type,
column_name2 data_type,
column_name3 data_type,
.......
)

  

為了執行此命令,我必須向 mysql_query() 函數添加 CREATE TABLE 語句。

例子
下面的例子展示了如何創建一個名為 "person" 的表,此表有三列。列名是 "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 person 
(
FirstName varchar(15),
LastName varchar(15),
Age int
)";
mysql_query($sql,$con);

mysql_close($con);
?>

  

重要事項:在創建表之前,必須首先選擇數據庫。通過 mysql_select_db() 函數選取數據庫。

注釋:當您創建 varchar 類型的數據庫字段時,必須規定該字段的最大長度,例如:varchar(15)。
MySQL 數據類型
PHP 數據庫
PHP 數據庫

主鍵和自動遞增字段
每個表都應有一個主鍵字段。

主鍵用于對表中的行進行唯一標識。每個主鍵值在表中必須是唯一的。此外,主鍵字段不能為空,這是由于數據庫引擎需要一個值來對記錄進行定位。

主鍵字段永遠要被編入索引。這條規則沒有例外。你必須對主鍵字段進行索引,這樣數據庫引擎才能快速定位給予該鍵值的行。

下面的例子把 personID 字段設置為主鍵字段。主鍵字段通常是 ID 號,且通常使用 AUTO_INCREMENT 設置。AUTO_INCREMENT 會在新紀錄被添加時逐一增加該字段的值。要確保主鍵字段不為空,我們必須向該字段添加 NOT NULL 設置。

例子
    
$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);

  


PHP MySQL Insert Into
INSERT INTO 語句用于向數據庫表中插入新紀錄。
向數據庫表插入數據
INSERT INTO 語句用于向數據庫表添加新紀錄。

語法
    
INSERT INTO table_name
VALUES (value1, value2,....)

  

您還可以規定希望在其中插入數據的列:
    
INSERT INTO table_name (column1, column2,...)
VALUES (value1, value2,....)

  

注釋:SQL 語句對大小寫不敏感。INSERT INTO 與 insert into 相同。

為了讓 PHP 執行該語句,我們必須使用 mysql_query() 函數。該函數用于向 MySQL 連接發送查詢或命令。

例子
在前面的章節,我們創建了一個名為 "Person" 的表,有三個列:"Firstname", "Lastname" 以及 "Age"。我們將在本例中使用同樣的表。下面的例子向 "Person" 表添加了兩個新紀錄:
    
<?php
$con = mysql_connect("localhost","peter","abc123");
if (!$con)
  {
  die('Could not connect: ' . mysql_error());
  }

mysql_select_db("my_db", $con);

mysql_query("INSERT INTO person (FirstName, LastName, Age) 
VALUES ('Peter', 'Griffin', '35')");

mysql_query("INSERT INTO person (FirstName, LastName, Age) 
VALUES ('Glenn', 'Quagmire', '33')");

mysql_close($con);
?>

  

把來自表單的數據插入數據庫
現在,我們創建一個 HTML 表單,這個表單可把新紀錄插入 "Person" 表。

這是這個 HTML 表單:
    
<html>
<body>

<form action="insert.php" method="post">
Firstname: <input type="text" name="firstname" />
Lastname: <input type="text" name="lastname" />
Age: <input type="text" name="age" />
<input type="submit" />
</form>

</body>
</html>

  

當用戶點擊上例中 HTML 表單中的提交按鈕時,表單數據被發送到 "insert.php"。"insert.php" 文件連接數據庫,并通過 $_POST 變量從表單取回值。然后,mysql_query() 函數執行 INSERT INTO 語句,一條新的記錄會添加到數據庫表中。

下面是 "insert.php" 頁面的代碼:
    
<?php
$con = mysql_connect("localhost","peter","abc123");
if (!$con)
  {
  die('Could not connect: ' . mysql_error());
  }

mysql_select_db("my_db", $con);

$sql="INSERT INTO person (FirstName, LastName, Age)
VALUES
('$_POST[firstname]','$_POST[lastname]','$_POST[age]')";

if (!mysql_query($sql,$con))
  {
  die('Error: ' . mysql_error());
  }
echo "1 record added";

mysql_close($con)
?>

  


PHP MySQL Select
SELECT 語句用于從數據庫中選取數據。
從數據庫表中選取數據
SELECT 語句用于從數據庫中選取數據。

語法
    
SELECT column_name(s) FROM table_name

  

注釋:SQL 語句對大小寫不敏感。SELECT 與 select 等效。

為了讓 PHP 執行上面的語句,我們必須使用 mysql_query() 函數。該函數用于向 MySQL 發送查詢或命令。

例子
下面的例子選取存儲在 "Person" 表中的所有數據(* 字符選取表中所有數據):
    
<?php
$con = mysql_connect("localhost","peter","abc123");
if (!$con)
  {
  die('Could not connect: ' . mysql_error());
  }

mysql_select_db("my_db", $con);

$result = mysql_query("SELECT * FROM person");

while($row = mysql_fetch_array($result))
  {
  echo $row['FirstName'] . " " . $row['LastName'];
  echo "<br />";
  }

mysql_close($con);
?>

  

上面這個例子在 $result 變量中存放由 mysql_query() 函數返回的數據。接下來,我們使用 mysql_fetch_array() 函數以數組的形式從記錄集返回第一行。每個隨后對 mysql_fetch_array() 函數的調用都會返回記錄集中的下一行。 while loop 語句會循環記錄集中的所有記錄。為了輸出每行的值,我們使用了 PHP 的 $row 變量 ($row['FirstName'] 和 $row['LastName'])。

以上代碼的輸出:

Peter Griffin
Glenn Quagmire
在 HTML 表格中顯示結果
下面的例子選取的數據與上面的例子相同,但是將把數據顯示在一個 HTML 表格中:
    
<?php
$con = mysql_connect("localhost","peter","abc123");
if (!$con)
  {
  die('Could not connect: ' . mysql_error());
  }

mysql_select_db("my_db", $con);

$result = mysql_query("SELECT * FROM person");

echo "<table border='1'>
<tr>
<th>Firstname</th>
<th>Lastname</th>
</tr>";

while($row = mysql_fetch_array($result))
  {
  echo "<tr>";
  echo "<td>" . $row['FirstName'] . "</td>";
  echo "<td>" . $row['LastName'] . "</td>";
  echo "</tr>";
  }
echo "</table>";

mysql_close($con);
?>

  

以上代碼的輸出:


PHP MySQL Where 子句
如需選取匹配指定條件的數據,請向 SELECT 語句添加 WHERE 子句。
WHERE 子句
如需選取匹配指定條件的數據,請向 SELECT 語句添加 WHERE 子句。

語法
    
SELECT column FROM table
WHERE column operator value

  

下面的運算符可與 WHERE 子句一起使用:
PHP 數據庫

注釋:SQL 語句對大小寫不敏感。WHERE 與 where 等效。

為了讓 PHP 執行上面的語句,我們必須使用 mysql_query() 函數。該函數用于向 SQL 連接發送查詢和命令。

例子
下面的例子將從 "Person" 表中選取所有 FirstName='Peter' 的行:
    
<?php
$con = mysql_connect("localhost","peter","abc123");
if (!$con)
  {
  die('Could not connect: ' . mysql_error());
  }

mysql_select_db("my_db", $con);

$result = mysql_query("SELECT * FROM person
WHERE FirstName='Peter'");

while($row = mysql_fetch_array($result))
  {
  echo $row['FirstName'] . " " . $row['LastName'];
  echo "<br />";
  }

?>

  

以上代碼的輸出:

Peter Griffin

PHP MySQL Order By 關鍵詞
ORDER BY 關鍵詞用于對記錄集中的數據進行排序。
ORDER BY 關鍵詞
ORDER BY 關鍵詞用于對記錄集中的數據進行排序。

語法
    
SELECT column_name(s)
FROM table_name
ORDER BY column_name

  

注釋:SQL 對大小寫不敏感。ORDER BY 與 order by 等效。

例子
下面的例子選取 "Person" 表中的存儲的所有數據,并根據 "Age" 列對結果進行排序:
    
<?php
$con = mysql_connect("localhost","peter","abc123");
if (!$con)
  {
  die('Could not connect: ' . mysql_error());
  }

mysql_select_db("my_db", $con);

$result = mysql_query("SELECT * FROM person ORDER BY age");

while($row = mysql_fetch_array($result))
  {
  echo $row['FirstName'];
  echo " " . $row['LastName'];
  echo " " . $row['Age'];
  echo "<br />";
  }

mysql_close($con);
?>

  

以上代碼的輸出:

Glenn Quagmire 33
Peter Griffin 35
升序或降序的排序
如果您使用 ORDER BY 關鍵詞,記錄集的排序順序默認是升序(1 在 9 之前,"a" 在 "p" 之前)。

請使用 DESC 關鍵詞來設定降序排序(9 在 1 之前,"p" 在 "a" 之前):
    
SELECT column_name(s)
FROM table_name
ORDER BY column_name DESC

  

根據兩列進行排序
可以根據多個列進行排序。當按照多個列進行排序時,只有第一列相同時才使用第二列:
    
SELECT column_name(s)
FROM table_name
ORDER BY column_name1, column_name2

  


PHP MySQL Update
UPDATE 語句用于中修改數據庫表中的數據。
更新數據庫中的數據
UPDATE 語句用于在數據庫表中修改數據。

語法
    
UPDATE table_name
SET column_name = new_value
WHERE column_name = some_value

  

注釋:SQL 對大小寫不敏感。UPDATE 與 update 等效。

為了讓 PHP 執行上面的語句,我們必須使用 mysql_query( 函數。該函數用于向 SQL 連接發送查詢和命令。

例子
稍早時,我們在本教程中創建了一個名為 "Person" 的表。它看起來類似這樣:


下面的例子更新 "Person" 表的一些數據:
    
<?php
$con = mysql_connect("localhost","peter","abc123");
if (!$con)
  {
  die('Could not connect: ' . mysql_error());
  }

mysql_select_db("my_db", $con);

mysql_query("UPDATE Person SET Age = '36'
WHERE FirstName = 'Peter' AND LastName = 'Griffin'");

mysql_close($con);
?>

  

在這次更新后,"Person" 表格是這樣的:


PHP MySQL Delete From
DELETE FROM 語句用于從數據庫表中刪除行。
刪除數據庫中的數據
DELETE FROM 語句用于從數據庫表中刪除記錄。

語法
    
DELETE FROM table_name
WHERE column_name = some_value

  

注釋:SQL 對大小寫不敏感。DELETE FROM 與 delete from 等效。

為了讓 PHP 執行上面的語句,我們必須使用 mysql_query( 函數。該函數用于向 SQL 連接發送查詢和命令。

例子
稍早時,我們在本教程中創建了一個名為 "Person" 的表。它看起來類似這樣:


下面的例子刪除 "Person" 表中所有 LastName='Griffin' 的記錄:
    
<?php
$con = mysql_connect("localhost","peter","abc123");
if (!$con)
  {
  die('Could not connect: ' . mysql_error());
  }

mysql_select_db("my_db", $con);

mysql_query("DELETE FROM Person WHERE LastName='Griffin'");

mysql_close($con);
?>

  

在這次刪除之后,表是這樣的:


PHP Database ODBC
ODBC 指的是(Application Programming Interface,API),使我們有能力連接到某個數據源(比如一個 MS Access 數據庫)。
創建 ODBC 連接
通過一個 ODBC 連接,您可以連接到您的網絡中的任何計算機上的任何數據庫,只要 ODBC 連接是可用的。

這是創建到達 MS Access 數據的 ODBC 連接的方法:

在控制面板中打開管理工具
雙擊其中的數據源 (ODBC) 圖標
選擇系統 DSN 選項卡
點擊系統 DSN 選項卡中的“添加”按鈕
選擇 Microsoft Access Driver。點擊完成。
在下一個界面,點擊“選擇”來定位數據庫。
為這個數據庫取一個數據源名 (DSN)。
點擊確定。
請注意,必須在您的網站所在的計算機上完成這個配置。如果您的計算機上正在運行 Internet 信息服務器 (IIS),上面的指令會生效,但是假如您的網站位于遠程服務器,您必須擁有對該服務器的物理訪問權限,或者請您的主機提供商為您建立 DSN。
連接到 ODBC
odbc_connect() 函數用于連接到 ODBC 數據源。該函數有四個參數:數據源名、用戶名、密碼以及可選的指針類型參數。

odbc_exec() 函數用于執行 SQL 語句。

例子
下面的例子創建了到達名為 northwind 的 DSN 的連接,不沒有用戶名和密碼。然后創建并執行一條 SQL 語句:
    
$conn=odbc_connect('northwind','','');
$sql="SELECT * FROM customers"; 
$rs=odbc_exec($conn,$sql);

  

取回記錄
odbc_fetch_row() 函數用于從結果集中返回記錄。如果能夠返回行,則返回 true,否則返回 false。

該函數有兩個參數:ODBC 結果標識符和可選的行號:
    
odbc_fetch_row($rs)

  

從記錄中取回字段
odbc_result() 函數用于從記錄中讀取字段。該函數有兩個參數:ODBC 結果標識符和字段編號或名稱。

下面的代碼行從記錄中返回第一個字段的值:
    
$compname=odbc_result($rs,1); 

  

The code line below returns the value of a field called "CompanyName":
    
$compname=odbc_result($rs,"CompanyName");

  

關閉 ODBC 連接
odbc_close()函數用于關閉 ODBC 連接。
    
odbc_close($conn);

  

ODBC 實例
下面的例子展示了如何首先創建一個數據庫連接,然后是結果集,然后在 HTML 表格中顯示數據。
    
<html>
<body>

<?php
$conn=odbc_connect('northwind','','');
if (!$conn)
  {exit("Connection Failed: " . $conn);}
$sql="SELECT * FROM customers";
$rs=odbc_exec($conn,$sql);
if (!$rs)
  {exit("Error in SQL");}
echo "<table><tr>";
echo "<th>Companyname</th>";
echo "<th>Contactname</th></tr>";
while (odbc_fetch_row($rs))
{
  $compname=odbc_result($rs,"CompanyName");
  $conname=odbc_result($rs,"ContactName");
  echo "<tr><td>$compname</td>";
  echo "<td>$conname</td></tr>";
}
odbc_close($conn);
echo "</table>";
?>

</body>
</html>

  

PHP 數據庫


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 精品一区二区三区不卡 | 国产成人精品一区在线播放 | 精品视频一区二区观看 | 亚洲成人一区二区 | 欧美日韩综合一区 | 达达兔午夜起神影院在线观看麻烦 | 国产第一页浮力 | 九色成人蝌蚪国产精品电影在线 | 国产日产亚洲欧美综合另类 | 欧美极品在线 | 午夜激情影院 | 男人天堂社区 | 成人免费大片a毛片 | 日本高清视频网址 | 国产精品免费网站 | gvg668| 日本妇人成熟A片一区-老狼 | 永久免费mv网站入口 | 欧美日韩视频在线 | 操欧美女 | 国产成人福利视频在线观看 | 国产永久在线视频 | 久久精品国产久精国产 | 中文字幕三区 | 91精品久久一区二区三区 | 黄色av片在线观看 | 国产精品色 | 亚洲成年人免费网站 | 欧美日韩在线观看视频 | 国产深夜福利在线观看网站 | 国产一区二区三区视频 | 在线不卡视频 | 91看片网| 中文字幕 国产精品 | 亚洲天堂网站 | 亚洲国产日本 | 五月婷婷六月爱 | 欧美国产高清欧美 | 欧美亚洲另类在线 | 亚洲国产精品人人爽夜夜爽 | 成人在线激情网 |