Chèn và cập nhật trong một truy vấn trong MySQL PHP

Bây giờ bạn đã hiểu cách tạo cơ sở dữ liệu và bảng trong MySQL. Trong hướng dẫn này, bạn sẽ học cách thực hiện truy vấn SQL để chèn bản ghi vào bảng

Câu lệnh

connect_error);
}
 
// Attempt insert query execution
$sql = "INSERT INTO persons (first_name, last_name, email) VALUES ('Peter', 'Parker', '[email protected]')";
if($mysqli->query($sql) === true){
    echo "Records inserted successfully.";
} else{
    echo "ERROR: Could not able to execute $sql. " . $mysqli->error;
}
 
// Close connection
$mysqli->close();
?>
0 được sử dụng để chèn các hàng mới vào bảng cơ sở dữ liệu

Hãy tạo một truy vấn SQL bằng cách sử dụng câu lệnh

connect_error);
}
 
// Attempt insert query execution
$sql = "INSERT INTO persons (first_name, last_name, email) VALUES ('Peter', 'Parker', '[email protected]')";
if($mysqli->query($sql) === true){
    echo "Records inserted successfully.";
} else{
    echo "ERROR: Could not able to execute $sql. " . $mysqli->error;
}
 
// Close connection
$mysqli->close();
?>
0 với các giá trị phù hợp, sau đó chúng ta sẽ thực hiện truy vấn chèn này thông qua việc chuyển nó tới hàm
connect_error);
}
 
// Attempt insert query execution
$sql = "INSERT INTO persons (first_name, last_name, email) VALUES ('Peter', 'Parker', '[email protected]')";
if($mysqli->query($sql) === true){
    echo "Records inserted successfully.";
} else{
    echo "ERROR: Could not able to execute $sql. " . $mysqli->error;
}
 
// Close connection
$mysqli->close();
?>
2 của PHP để chèn dữ liệu vào bảng. Đây là một ví dụ, chèn một hàng mới vào bảng người bằng cách chỉ định các giá trị cho các trường first_name, last_name và email

Thí dụ

PDO hướng đối tượng thủ tục

Tải xuống

connect_error);
}
 
// Attempt insert query execution
$sql = "INSERT INTO persons (first_name, last_name, email) VALUES ('Peter', 'Parker', '[email protected]')";
if($mysqli->query($sql) === true){
    echo "Records inserted successfully.";
} else{
    echo "ERROR: Could not able to execute $sql. " . $mysqli->error;
}
 
// Close connection
$mysqli->close();
?>
setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
} catch(PDOException $e){
    die("ERROR: Could not connect. " . $e->getMessage());
}
 
// Attempt insert query execution
try{
    $sql = "INSERT INTO persons (first_name, last_name, email) VALUES ('Peter', 'Parker', '[email protected]')";    
    $pdo->exec($sql);
    echo "Records inserted successfully.";
} catch(PDOException $e){
    die("ERROR: Could not able to execute $sql. " . $e->getMessage());
}
 
// Close connection
unset($pdo);
?>

Nếu bạn còn nhớ từ chương trước, trường id được đánh dấu bằng cờ

connect_error);
}
 
// Attempt insert query execution
$sql = "INSERT INTO persons (first_name, last_name, email) VALUES ('Peter', 'Parker', '[email protected]')";
if($mysqli->query($sql) === true){
    echo "Records inserted successfully.";
} else{
    echo "ERROR: Could not able to execute $sql. " . $mysqli->error;
}
 
// Close connection
$mysqli->close();
?>
3. Công cụ sửa đổi này yêu cầu MySQL tự động gán giá trị cho trường này nếu nó không được chỉ định, bằng cách tăng giá trị trước đó lên 1


Chèn nhiều hàng vào một bảng

Bạn cũng có thể chèn nhiều hàng vào một bảng bằng một truy vấn chèn cùng một lúc. Để thực hiện việc này, hãy bao gồm nhiều danh sách giá trị cột trong câu lệnh

connect_error);
}
 
// Attempt insert query execution
$sql = "INSERT INTO persons (first_name, last_name, email) VALUES ('Peter', 'Parker', '[email protected]')";
if($mysqli->query($sql) === true){
    echo "Records inserted successfully.";
} else{
    echo "ERROR: Could not able to execute $sql. " . $mysqli->error;
}
 
// Close connection
$mysqli->close();
?>
0, trong đó giá trị cột cho mỗi hàng phải được đặt trong dấu ngoặc đơn và được phân tách bằng dấu phẩy

Hãy chèn thêm vài hàng vào bảng người, như thế này

Thí dụ

PDO hướng đối tượng thủ tục

Tải xuống

connect_error);
}
 
// Attempt insert query execution
$sql = "INSERT INTO persons (first_name, last_name, email) VALUES
            ('John', 'Rambo', '[email protected]'),
            ('Clark', 'Kent', '[email protected]'),
            ('John', 'Carter', '[email protected]'),
            ('Harry', 'Potter', '[email protected]')";
if($mysqli->query($sql) === true){
    echo "Records inserted successfully.";
} else{
    echo "ERROR: Could not able to execute $sql. " . $mysqli->error;
}
 
// Close connection
$mysqli->close();
?>
setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
} catch(PDOException $e){
    die("ERROR: Could not connect. " . $e->getMessage());
}
 
// Attempt insert query execution
try{
    $sql = "INSERT INTO persons (first_name, last_name, email) VALUES
            ('John', 'Rambo', '[email protected]'),
            ('Clark', 'Kent', '[email protected]'),
            ('John', 'Carter', '[email protected]'),
            ('Harry', 'Potter', '[email protected]')";   
    $pdo->exec($sql);
    echo "Records inserted successfully.";
} catch(PDOException $e){
    die("ERROR: Could not able to execute $sql. " . $e->getMessage());
}
 
// Close connection
unset($pdo);
?>

Bây giờ, hãy truy cập phpMyAdmin (______0_______5) và kiểm tra dữ liệu bảng người bên trong cơ sở dữ liệu demo. Bạn sẽ thấy giá trị cho cột id được gán tự động bằng cách tăng giá trị của id trước đó lên 1

Ghi chú. Bất kỳ số lần ngắt dòng nào cũng có thể xảy ra trong câu lệnh SQL, với điều kiện là bất kỳ dấu ngắt dòng nào không ngắt từ khóa, giá trị, biểu thức, v.v.


Chèn dữ liệu vào cơ sở dữ liệu từ biểu mẫu HTML

Trong phần trước, chúng ta đã học cách chèn dữ liệu vào cơ sở dữ liệu từ tập lệnh PHP. Bây giờ, chúng ta sẽ xem cách chúng ta có thể chèn dữ liệu vào cơ sở dữ liệu thu được từ biểu mẫu HTML. Hãy tạo một biểu mẫu HTML có thể được sử dụng để chèn bản ghi mới vào bảng người

Bước 1. Tạo biểu mẫu HTML

Đây là một biểu mẫu HTML đơn giản có ba trường văn bản

connect_error);
}
 
// Attempt insert query execution
$sql = "INSERT INTO persons (first_name, last_name, email) VALUES ('Peter', 'Parker', '[email protected]')";
if($mysqli->query($sql) === true){
    echo "Records inserted successfully.";
} else{
    echo "ERROR: Could not able to execute $sql. " . $mysqli->error;
}
 
// Close connection
$mysqli->close();
?>
6 và một nút gửi





Add Record Form



    

First Name:

Last Name:

Email Address:

Bước 2. Truy xuất và chèn dữ liệu biểu mẫu

Khi người dùng nhấp vào nút gửi của biểu mẫu HTML thêm bản ghi, trong ví dụ trên, dữ liệu biểu mẫu được gửi đến 'chèn. tập tin php'. 'chèn. php' kết nối với máy chủ cơ sở dữ liệu MySQL, truy xuất các trường biểu mẫu bằng cách sử dụng các biến PHP

connect_error);
}
 
// Attempt insert query execution
$sql = "INSERT INTO persons (first_name, last_name, email) VALUES ('Peter', 'Parker', '[email protected]')";
if($mysqli->query($sql) === true){
    echo "Records inserted successfully.";
} else{
    echo "ERROR: Could not able to execute $sql. " . $mysqli->error;
}
 
// Close connection
$mysqli->close();
?>
7 và cuối cùng thực hiện truy vấn chèn để thêm các bản ghi. Đây là mã hoàn chỉnh của 'chèn' của chúng tôi. tập tin php'

Thí dụ

PDO hướng đối tượng thủ tục

Tải xuống

connect_error);
}
 
// Escape user inputs for security
$first_name = $mysqli->real_escape_string($_REQUEST['first_name']);
$last_name = $mysqli->real_escape_string($_REQUEST['last_name']);
$email = $mysqli->real_escape_string($_REQUEST['email']);
 
// Attempt insert query execution
$sql = "INSERT INTO persons (first_name, last_name, email) VALUES ('$first_name', '$last_name', '$email')";
if($mysqli->query($sql) === true){
    echo "Records inserted successfully.";
} else{
    echo "ERROR: Could not able to execute $sql. " . $mysqli->error;
}
 
// Close connection
$mysqli->close();
?>
setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
} catch(PDOException $e){
    die("ERROR: Could not connect. " . $e->getMessage());
}
 
// Attempt insert query execution
try{
    // Create prepared statement
    $sql = "INSERT INTO persons (first_name, last_name, email) VALUES (:first_name, :last_name, :email)";
    $stmt = $pdo->prepare($sql);
    
    // Bind parameters to statement
    $stmt->bindParam(':first_name', $_REQUEST['first_name']);
    $stmt->bindParam(':last_name', $_REQUEST['last_name']);
    $stmt->bindParam(':email', $_REQUEST['email']);
    
    // Execute the prepared statement
    $stmt->execute();
    echo "Records inserted successfully.";
} catch(PDOException $e){
    die("ERROR: Could not able to execute $sql. " . $e->getMessage());
}
 
// Close connection
unset($pdo);
?>

Trong chương tiếp theo, chúng ta sẽ mở rộng ví dụ về truy vấn chèn này và tiến thêm một bước nữa bằng cách triển khai câu lệnh đã chuẩn bị để có hiệu suất và bảo mật tốt hơn

Ghi chú. Hàm

connect_error);
}
 
// Attempt insert query execution
$sql = "INSERT INTO persons (first_name, last_name, email) VALUES ('Peter', 'Parker', '[email protected]')";
if($mysqli->query($sql) === true){
    echo "Records inserted successfully.";
} else{
    echo "ERROR: Could not able to execute $sql. " . $mysqli->error;
}
 
// Close connection
$mysqli->close();
?>
8 thoát các ký tự đặc biệt trong một chuỗi và tạo một chuỗi SQL hợp lệ để cung cấp bảo mật chống lại việc tiêm SQL

Đây là ví dụ rất cơ bản về việc chèn dữ liệu biểu mẫu vào bảng cơ sở dữ liệu MySQL. Bạn có thể mở rộng ví dụ này và làm cho nó tương tác hơn bằng cách thêm xác thực vào đầu vào của người dùng trước khi chèn nó vào bảng cơ sở dữ liệu. Vui lòng xem hướng dẫn về xác thực biểu mẫu PHP để tìm hiểu thêm về cách làm sạch và xác thực đầu vào của người dùng bằng PHP

Làm cách nào để chèn và cập nhật trong một truy vấn trong SQL PHP?

php $query = "CHÈN VÀO thanh toán (. ) GIÁ TRỊ (. ) ; . = "CẬP NHẬT thanh toán THIẾT LẬP. ; . php $query = "INSERT INTO billing (...) VALUES (....) ; "; $query . = "UPDATE billing SET ... ; "; if(!

Làm cách nào để chèn và cập nhật cùng lúc trong MySQL?

Bạn có thể thử sử dụng INSERT INTO. BẬT CẬP NHẬT KHÓA TRỰC TIẾP . Điều này sẽ chỉ hoạt động nếu bạn có PRIMARY KEY (tiêu đề) trên bảng1. Câu lệnh INSERT s các hàng trên bảng1 trừ khi hàng mới gây ra khóa chính trùng lặp, trong trường hợp đó, nó thực hiện CẬP NHẬT trên cột trạng thái.

Chúng tôi có thể sử dụng cập nhật thay cho chèn không?

Không. Chèn sẽ chỉ tạo một hàng mới .

Làm cách nào để chỉnh sửa và cập nhật dữ liệu trong PHP?

Source Code: SELECTING and Displaying Data
Name:

List of companies .

< ? php while( $row = mysql_fetch_array($res) ) echo "$row[id]. $row[name]