Cách DELETE dữ liệu từ database MySQL bằng Golang

Hướng dẫn cách kết nối và xóa dữ liệu từ một bảng trong database MySQL bằng ngôn ngữ lập trình Golang.

Trong bài viết này, bạn sẽ học cách kết nối đến một database MySQL và sử dụng Golang để thực hiện truy vấn DELETE, giúp xóa dữ liệu từ một bảng cụ thể trong cơ sở dữ liệu.

package main

import (
	"database/sql"
	"fmt"
	"log"

	_ "github.com/go-sql-driver/mysql"
)

func main() {
	// Kết nối đến database MySQL
	db, err := sql.Open("mysql", "root:password@tcp(127.0.0.1:3306)/test_db")
	if err != nil {
		log.Fatal(err)
	}
	defer db.Close()

	// Câu lệnh DELETE với Prepared Statement
	stmt, err := db.Prepare("DELETE FROM students WHERE id = ? OR age = ?")
	if err != nil {
		log.Fatal(err)
	}
	defer stmt.Close()

	// Thực hiện câu lệnh DELETE với nhiều tham số
	res, err := stmt.Exec(1, 22)
	if err != nil {
		log.Fatal(err)
	}

	// Kiểm tra số hàng đã bị xóa
	rowsAffected, err := res.RowsAffected()
	if err != nil {
		log.Fatal(err)
	}

	fmt.Printf("Đã xóa %d hàng.\n", rowsAffected)
}

Giải thích chi tiết từng dòng code:

  1. sql.Open("mysql", "root:password@tcp(127.0.0.1:3306)/test_db"): Kết nối đến database MySQL với thông tin chi tiết về user, password, và địa chỉ database.
  2. db.Prepare("DELETE FROM students WHERE id = ? OR age = ?"): Tạo một Prepared Statement cho câu lệnh DELETE với hai tham số idage.
  3. stmt.Exec(1, 22): Thực thi câu lệnh DELETE với các giá trị tham số id = 1age = 22.
  4. res.RowsAffected(): Lấy số lượng hàng đã bị xóa và in ra kết quả.

Yêu cầu hệ thống:

  • Golang 1.16 trở lên
  • Thư viện: github.com/go-sql-driver/mysql

Cách cài đặt các thư viện để chạy được đoạn mã Golang trên:

Sử dụng lệnh sau để cài đặt thư viện MySQL driver:

go get -u github.com/go-sql-driver/mysql

Lời khuyên:

  • Luôn sử dụng Prepared Statements để tránh SQL Injection.
  • Kiểm tra kỹ các tham số đầu vào trước khi thực thi câu lệnh DELETE.


Các Hướng Dẫn Cùng Chủ Đề Đang Xem

Hướng dẫn tạo form upload nhiều hình ảnh bằng Golang

Hướng dẫn chi tiết cách tạo form để upload nhiều hình ảnh cùng lúc trong Golang bằng cách sử dụng thư viện `net/http`.
Xử lý đa luồng trong Golang bằng Goroutine

Hướng dẫn cách xử lý đa luồng trong Golang bằng cách sử dụng Goroutine, giúp tối ưu hóa hiệu suất và tận dụng khả năng xử lý song song của CPU.
Cách truyền Authentication Header Token khi POST dữ liệu tới API bằng Golang

Hướng dẫn cách truyền Authentication Header Token khi gửi yêu cầu POST dữ liệu tới API bằng Golang. Bài viết này sẽ giúp bạn hiểu cách làm việc với HTTP request, thêm token vào Header để xác thực và gửi dữ liệu tới API.
Cách tách chuỗi trong Golang bằng hàm SplitAfter

Hướng dẫn cách sử dụng hàm `SplitAfter` trong Golang để tách chuỗi dựa trên một ký tự hoặc một chuỗi con nhất định. Bài viết này sẽ giải thích chi tiết cách hàm này hoạt động và ví dụ cụ thể.
Cách lấy dữ liệu JSON từ API bằng Golang

Bài viết này hướng dẫn cách lấy dữ liệu JSON từ API sử dụng ngôn ngữ lập trình Golang, giúp bạn hiểu rõ hơn về cách tương tác với các dịch vụ web.
Xác thực JSON Web Token (JWT) với Golang

Hướng dẫn cách sử dụng JSON Web Token (JWT) để xác thực người dùng trong ứng dụng Golang. Bài viết sẽ trình bày chi tiết cách tạo, ký và xác minh token JWT để bảo mật API.
Tạo mã Captcha bằng Golang

Hướng dẫn chi tiết cách tạo mã Captcha bằng Golang để bảo vệ ứng dụng web khỏi các cuộc tấn công tự động và bot.
Cách SELECT dữ liệu từ database MySQL bằng Golang

Hướng dẫn cách sử dụng Golang để truy vấn dữ liệu từ MySQL database bằng Prepared Statements với nhiều tham số.
Cách chia chuỗi trong Golang bằng hàm SplitAfterN

Hướng dẫn cách sử dụng hàm `SplitAfterN` trong Golang để chia chuỗi dựa trên ký tự phân tách và giới hạn số phần tử được chia. Hàm này hữu ích khi cần chia chuỗi nhưng vẫn giữ nguyên ký tự phân tách.
Cách tự động đăng nhập vào website sử dụng Selenium với Chrome trong Golang

Hướng dẫn cách sử dụng Selenium trong Golang để tự động đăng nhập vào một website bằng trình duyệt Chrome. Bài viết sẽ cung cấp mã code cụ thể và giải thích chi tiết từng bước.

Đã thêm vào giỏ hàng