PHP基礎回顧之My SQL(七)
阿新 • • 發佈:2018-12-11
連線 MySQL
<?php
$servername = "localhost";
$username = "username";
$password = "password";
// 建立連線
$conn = new mysqli($servername, $username, $password);
// 檢測連線
if ($conn->connect_error) {
die("連線失敗: " . $conn->connect_error);
}
echo "連線成功";
?>
關閉連線
$conn->close();
建立 MySQL 資料庫
CREATE DATABASE 語句用於在 MySQL 中建立資料庫。在下面的例項中,建立了一個名為 “myDB” 的資料庫:
<?php $servername = "localhost"; $username = "username"; $password = "password"; // 建立連線 $conn = new mysqli($servername, $username, $password); // 檢測連線 if ($conn->connect_error) { die("連線失敗: " . $conn->connect_error); } // 建立資料庫 $sql = "CREATE DATABASE myDB"; if ($conn->query($sql) === TRUE) { echo "資料庫建立成功"; } else { echo "Error creating database: " . $conn->error; } $conn->close(); ?>
建立資料表
<?php $servername = "localhost"; $username = "username"; $password = "password"; $dbname = "myDB"; // 建立連線 $conn = new mysqli($servername, $username, $password, $dbname); // 檢測連線 if ($conn->connect_error) { die("連線失敗: " . $conn->connect_error); } // 使用 sql 建立資料表 $sql = "CREATE TABLE MyGuests ( id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY, firstname VARCHAR(30) NOT NULL, lastname VARCHAR(30) NOT NULL, email VARCHAR(50), reg_date TIMESTAMP )"; if ($conn->query($sql) === TRUE) { echo "Table MyGuests created successfully"; } else { echo "建立資料表錯誤: " . $conn->error; } $conn->close(); ?>
插入資料
<?php
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "myDB";
// 建立連線
$conn = new mysqli($servername, $username, $password, $dbname);
// 檢測連線
if ($conn->connect_error) {
die("連線失敗: " . $conn->connect_error);
}
$sql = "INSERT INTO MyGuests (firstname, lastname, email)
VALUES ('John', 'Doe', '[email protected]')";
if ($conn->query($sql) === TRUE) {
echo "新記錄插入成功";
} else {
echo "Error: " . $sql . "<br>" . $conn->error;
}
$conn->close();
?>
插入多條資料
<?php
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "myDB";
// 建立連結
$conn = new mysqli($servername, $username, $password, $dbname);
// 檢查連結
if ($conn->connect_error) {
die("連線失敗: " . $conn->connect_error);
}
$sql = "INSERT INTO MyGuests (firstname, lastname, email)
VALUES ('John', 'Doe', '[email protected]');";
$sql .= "INSERT INTO MyGuests (firstname, lastname, email)
VALUES ('Mary', 'Moe', '[email protected]');";
$sql .= "INSERT INTO MyGuests (firstname, lastname, email)
VALUES ('Julie', 'Dooley', '[email protected]')";
if ($conn->multi_query($sql) === TRUE) {
echo "新記錄插入成功";
} else {
echo "Error: " . $sql . "<br>" . $conn->error;
}
$conn->close();
?>
MySQLi 預處理語句 以下例項在 MySQLi 中使用了預處理語句,並綁定了相應的引數: 例項 (MySQLi 使用預處理語句)
<?php
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "myDB";
// 建立連線
$conn = new mysqli($servername, $username, $password, $dbname);
// 檢測連線
if ($conn->connect_error) {
die("連線失敗: " . $conn->connect_error);
}
// 預處理及繫結
$stmt = $conn->prepare("INSERT INTO MyGuests (firstname, lastname, email) VALUES (?, ?, ?)");
$stmt->bind_param("sss", $firstname, $lastname, $email);
// 設定引數並執行
$firstname = "John";
$lastname = "Doe";
$email = "[email protected]";
$stmt->execute();
$firstname = "Mary";
$lastname = "Moe";
$email = "[email protected]";
$stmt->execute();
$firstname = "Julie";
$lastname = "Dooley";
$email = "[email protected]";
$stmt->execute();
echo "新記錄插入成功";
$stmt->close();
$conn->close();
?>
從 MySQL 資料庫讀取資料
<?php
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "myDB";
// 建立連線
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
die("連線失敗: " . $conn->connect_error);
}
$sql = "SELECT id, firstname, lastname FROM MyGuests";
$result = $conn->query($sql);
if ($result->num_rows > 0) {
// 輸出資料
while($row = $result->fetch_assoc()) {
echo "id: " . $row["id"]. " - Name: " . $row["firstname"]. " " . $row["lastname"]. "<br>";
}
} else {
echo "0 結果";
}
$conn->close();
?>
where語句
<?php
$con=mysqli_connect("localhost","username","password","database" );
// 檢測連線
if (mysqli_connect_errno())
{
echo "連線失敗: " . mysqli_connect_error();
}
$result = mysqli_query($con,"SELECT * FROM Persons
WHERE FirstName='Peter'");
while($row = mysqli_fetch_array($result))
{
echo $row['FirstName'] . " " . $row['LastName'];
echo "<br>";
}
?>
ORDER BY 關鍵詞
- ORDER BY 關鍵詞用於對記錄集中的資料進行排序。
- ORDER BY 關鍵詞預設對記錄進行升序排序。 -用 DESC 關鍵字降序排序 語法 SELECT column_name(s) FROM table_name ORDER BY column_name(s) ASC|DESC
更新資料庫中的資料update
- UPDATE 語句用於更新資料庫表中已存在的記錄。 語法 UPDATE table_name SET column1=value, column2=value2,… WHERE some_column=some_value
刪除資料庫中的資料delete
- DELETE FROM 語句用於從資料庫表中刪除記錄。 語法 DELETE FROM table_name WHERE some_column = some_value