資料庫基礎知識(1)--資料庫php串連

來源:互聯網
上載者:User

標籤:names   需要   資料   資料庫操作   foreach   int   fas   選擇   record   

關聯式資料庫的常用基本術語 

  資料data

  資料庫database

  資料庫管理系統dbms

  表(資料表)table

  欄位field,列column

  行row,記錄record

 

資料庫操作的基本模式(流程)

  建立串連(認證身份)

  用戶端向伺服器端發送sql命令

  伺服器端執行命令,並返回執行的結果

  用戶端接收結果(並顯示)

  中斷連線

<?php
//1,串連資料庫:
$mylink = mysql_connect("localhost", ‘root‘, ‘‘);//串連到資料庫
//2,設定串連編碼(通常是utf8)
mysql_set_charset("utf8"); //也可以使用:mysql_query("set names utf8");
//3,選擇資料庫(如有需要)
mysql_select_db("temptab1"); //也可以使用:mysql_query("use 資料庫名");資料庫名字一定要對
//4,執行sql命令。
//$result = mysql_query( "幾乎任何sql語句 ");
if(1 == 1){
$randName = rand(1000, 9999); //獲得一個隨機數
$sql = "insert into temptab1(id, name)values($randName, ‘user_$randName‘);" ; //基本上寫好這條sql語句就可以,往temptab1表格裡,先建立一個id,name,往裡面分別插入資料
$str = "asf‘afas‘fafs"; //上一行單引號在php中只是一個一般字元
$result = mysql_query( $sql ); //執行該sql語句,並存結果
//返回的結果通常需要分兩種情形進行處理:
//4.1:如果是無返回資料的語句:
//4.1.1 如果$result為true,表示執行成功
if($result == true){
echo "插入資料成功";
}
//4.1.2 如果$result為false,表示執行失敗
else{
echo "失敗,請參考失敗提示資訊:" . mysql_error();
}
}

//下面開始執行select這種“返回資料”的語句,並顯示結果
$sql = "select * from temptab1 where id > 1";
$result = mysql_query($sql); //這裡如果執行成功,則被稱為“資料集”(結果集)
if($result === false){
echo "失敗,請參考失敗提示資訊:" . mysql_error();
}
else{
echo "<table border=‘10‘>";
while( $record = mysql_fetch_array( $result )){
//mysql_fetch_array()函數的作用類似foreach對數組的作用:遍曆(結果集)
//它每次去的結果集的“一行資料”,並“裝入”到數組 $record 中
//該數組的下標就是該select的欄位名,值就是對應行的資料值
echo "<tr>";
echo "<td>" . $record[‘id‘] . "</td>";
echo "<td>" . $record[‘name‘] . "</td>";
echo "</tr>";
}
echo "</table>";
}

//下面開始執行非select但返回資料的命令顯示結果
$sql = "show databases;"; //換成“desc 表名”這個命令,也是得到資料
$result = mysql_query($sql); //這裡如果執行成功,則被稱為“資料集”(結果集)
if($result === false){
echo "失敗,請參考失敗提示資訊:" . mysql_error();
}
else{
echo "<table border=‘1‘>";
echo "<tr>";
echo "<td>Database</td>";
echo "</tr>";
while( $record = mysql_fetch_array( $result )){
//mysql_fetch_array()函數的作用類似foreach對數組的作用:遍曆(結果集)
//它每次去的結果集的“一行資料”,並“裝入”到數組 $record 中
//該數組的下標就是該select的欄位名,值就是對應行的資料值
echo "<tr>";
echo "<td>" . $record[‘Database‘] . "</td>";
echo "</tr>";
}
echo "</table>";
}

//下面開始執行非select但返回資料的命令顯示結果
$sql = "show databases;";
$sql = "desc temptab1;";
$sql = "select * from temptab1";
$result = mysql_query($sql); //這裡如果執行成功,則被稱為“資料集”(結果集)
if($result === false){
echo "失敗,請參考失敗提示資訊:" . mysql_error();
}
else{
$fieldCount = mysql_num_fields($result); //得到結果集的欄位個數
echo "<table border=‘1‘>";
//輸出表頭部分,內容是欄位名:
echo "<tr>";
for($i = 0; $i < $fieldCount; ++$i){ //在每一行中對所有列進行“遍曆”
$fieldName = mysql_field_name($result, $i);//從結果集中取的第i個欄位的名字(i從0開始算起)
echo "<td>" . $fieldName . "</td>";
}
echo "</tr>";
while( $record = mysql_fetch_array( $result )){
//mysql_fetch_array()函數的作用類似foreach對數組的作用:遍曆(結果集)
//它每次去的結果集的“一行資料”,並“裝入”到數組 $record 中
//該數組的下標就是該select的欄位名,值就是對應行的資料值

//echo "<tr>";
//echo "<td>" . $record[‘Field‘] . "</td>";
//echo "<td>" . $record[‘Type‘] . "</td>";
//echo "</tr>";
//上述代碼要寫若干項,但如果欄位名(和欄位個數)不確定,則怎麼辦?
echo "<tr>";
for($i = 0; $i < $fieldCount; ++$i){ //在每一行中對所有列進行“遍曆”
$fieldName = mysql_field_name($result, $i);//從結果集中取的第i個欄位的名字(i從0開始算起)
echo "<td>" . $record[$fieldName] . "</td>";
}
echo "</tr>";
}
echo "</table>";
}
?>

 

 

轉自:http://www.cnblogs.com/shiyou00/p/5576667.html

資料庫基礎知識(1)--資料庫php串連

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.