2018年11月19日 星期一

PHP MySQLi 使用範例

2018.11.19 PHP 連接 MySQL 資料庫很常用,整理一些範例以便使用。
☆ 連接資料庫:
  $mysqli = new mysqli($DBServer,$DBLogin,$DBPassword,$DBName);
  if ($mysqli->connect_errno)
    {echo "連接資料庫失敗: (" . $mysqli->connect_errno . ") " . $mysqli->connect_error;exit();}


☆ 連線編碼常常是亂碼原因,設定連線編碼為 UTF-8:
  if (!$mysqli->set_charset("utf8"))
    {printf("資料庫設定無法設定utf8編碼: %s\r\n", $mysqli->error);exit();}

☆ 執行查詢:
  $sql = "SELECT id,name FROM student WHERE id = $id";
  if (!$result = $mysqli->query($sql))
    {
      echo "查詢失敗:";
      echo "查詢語法:" . $sql . "<br />";
      echo "錯誤代碼:(" . $mysqli->errno . ")";
      echo "錯誤語法:" . $mysqli->error . "<br />";
      exit;
    }

☆ 查詢結果:
   while ($row = $record_set->fetch_row())
    {echo $row[0];}

☆ 查詢結果用fetch_assoc():
   while ($row = $record_set->fetch_assoc())
    {echo $row["id"];}

☆ 沒有符合查詢的資料:
   if ($result->num_rows === 0)
      {echo "沒有符合查詢的資料!";}

☆ 插入一筆資料語法:
  INSERT INTO student (id,name) VALUES (107001,"德琦")

☆ 更新一筆資料語法:
  UPDATE student SET class = 1,name="德琦" WHERE id = 107001

☆ 複合語法:
  INSERT INTO student (id,name) VALUES ((SELECT id FROM class WHERE sn=101),"德琦")

☆ 多資料表聯合查詢語法:
  SELECT student.id,class.number FROM  student,class WHERE student.id = class.student_id

☆ 關閉資料庫:
  $mysqli->close();

沒有留言:

張貼留言