Bạn có thể truy xuất và cập nhật dữ liệu trong hệ thống quản lý cơ sở dữ liệu quan hệ (RDBMS) bằng ngôn ngữ SQL. Cơ sở dữ liệu SQL lưu trữ bộ sưu tập dữ liệu theo hàng và cột. Cơ sở dữ liệu SQL được sử dụng rộng rãi nhất là MySQL, PostgreSQL, Microsoft SQL Server và SQLite Show
Gói cơ sở dữ liệu/sql, một thành phần của thư viện chuẩn, chứa chức năng tương tác với cơ sở dữ liệu trong Go Bạn có thể nhập gói trình điều khiển phù hợp cho RDBMS của mình và sử dụng gói đó để tương tác với cơ sở dữ liệu bằng gói cơ sở dữ liệu/sql tương tác với cơ sở dữ liệu SQL Giới thiệu về cơ sở dữ liệu SQL trong GoBạn phải sử dụng một trong nhiều trình điều khiển có sẵn để tương tác với một máy chủ cơ sở dữ liệu cụ thể vì gói cơ sở dữ liệu/sql chỉ cung cấp giao diện chung cho cơ sở dữ liệu quan hệ Rất may, gói cơ sở dữ liệu/sql đảm nhiệm các hoạt động của cơ sở dữ liệu độc lập với máy chủ mà bạn đang kết nối, vì vậy bạn không phải lo lắng về việc triển khai cụ thể ngoài trình điều khiển Trình điều khiển cơ sở dữ liệu Go phổ biến nhất bao gồm
Danh sách này cũng hiển thị mức độ phổ biến tương đối của từng hệ thống cơ sở dữ liệu, vì vậy bạn có thể sử dụng nó để tìm tương đương cho các loại cơ sở dữ liệu khác Truy cập Cài đặt và nhập trình điều khiển cơ sở dữ liệuCài đặt trình điều khiển tương ứng với hệ thống cơ sở dữ liệu của bạn sau khi tạo không gian làm việc Go và khởi tạo tệp mô-đun Go. Chẳng hạn, hãy chạy một trong các lệnh sau trong thư mục không gian làm việc của bạn để cài đặt trình điều khiển MySQL hoặc SQLite Sau khi cài đặt trình điều khiển của bạn, hãy nhập nó cùng với gói cơ sở dữ liệu/sql bằng cách thêm dấu gạch dưới trước tên gói, chẳng hạn, để nhập trình điều khiển MySQL ________Đầu tiênBạn có thể kết nối với cơ sở dữ liệu và thực hiện các thao tác trên đó bằng cách nhập gói trình điều khiển tác dụng phụ Sử dụng Chuyển đến Kết nối với Cơ sở dữ liệu SQLPhương thức Open của gói cơ sở dữ liệu/sql, chấp nhận tên trình điều khiển và đường dẫn đến cơ sở dữ liệu (đối với SQLite) hoặc chuỗi kết nối (đối với MySQL), cho phép bạn thiết lập kết nối cơ sở dữ liệu sau khi nhập trình điều khiển cơ sở dữ liệu. Cân nhắc sử dụng một trong các ví dụ sau db, err := sql.Open("sqlite3", "models/testdb.db") // SQLite\n \ndb, err := sql.Open("mysql", "user:password@/dbname") // MySQL Sau khi cố gắng thiết lập kết nối, hãy nhớ tìm bất kỳ lỗi nào if err != nil {\n log.Fatalln(err)\n}\n Khi bạn đã kết nối với cơ sở dữ liệu, bạn có thể thực hiện các truy vấn và chuẩn bị các câu lệnh bằng cách sử dụng phiên bản cơ sở dữ liệu mà Open trả về. Tùy thuộc vào hệ thống cơ sở dữ liệu của bạn, phương thức Mở có thể trả về lỗi nếu cơ sở dữ liệu không tồn tại Thực thi các lệnh SQLPhương thức Chuẩn bị của phiên bản cơ sở dữ liệu của bạn chấp nhận một lệnh SQL và trả về một câu lệnh đã chuẩn bị để thực thi cùng với một đối tượng lỗi, cho phép bạn thực thi các lệnh SQL. Như một minh họa, nếu bạn muốn tạo một bảng mới command, err := db.Prepare("CREATE TABLE IF NOT EXISTS login(username TEXT, password TEXT)")\n Nếu một bảng có tên đăng nhập chưa tồn tại, thì câu lệnh đã nói ở trên sẽ tạo bảng đó và điền vào đó các trường loại TEXT được gọi là tên người dùng và mật khẩu Sử dụng ký hiệu dấu chấm hỏi (?) để chỉ ra các chỗ dành sẵn khi chèn các giá trị từ chương trình của bạn vào các truy vấn; _15Khi bạn đã tạo một câu lệnh đã chuẩn bị, bạn có thể chạy nó bằng cách gọi phương thức Exec của nó, phương thức này cho phép bạn chuyển các giá trị tham số của chương trình _16Bạn có thể kiểm tra số lượng hàng bị ảnh hưởng hoặc ID của lần chèn gần đây nhất bằng cách sử dụng kết quả truy vấn SQL mà Exec() trả về làm giá trị đầu tiên của nó _17Tìm nạp kết quả truy vấnSử dụng phương thức Truy vấn của phiên bản cơ sở dữ liệu, gói cơ sở dữ liệu/sql cho phép bạn truy vấn kết quả cơ sở dữ liệu rows, err := db.Query("SELECT * FROM User")\n \nif err != nil {\n return\n}\n Cấu trúc Hàng do phương thức Truy vấn trả về có thể được sử dụng để tương tác với tập kết quả của bạn; _19Phương thức Quét giải mã hàng hiện tại thành các biến chuỗi tên người dùng và mật khẩu tương ứng, trong ví dụ trên đại diện cho từng giá trị cột Cơ sở dữ liệu SQL luôn hữu íchGói cơ sở dữ liệu/sql giúp việc sử dụng cơ sở dữ liệu trong Go trở nên đơn giản, cho phép bạn dễ dàng truy vấn và chạy các lệnh SQL Bạn có thể sử dụng cơ sở dữ liệu như cơ sở dữ liệu SQLite trong bộ nhớ cho các dự án đơn giản của mình như quét web và xây dựng bot. Cơ sở dữ liệu SQL là cốt lõi của nhiều ứng dụng, đặc biệt là những ứng dụng xử lý các bộ dữ liệu lớn hoặc phức tạp Nếu bạn chọn không học SQL, thay vào đó, bạn có thể học cách sử dụng ORM để tương tác với cơ sở dữ liệu SQL trong Go. Tuy nhiên, kiến thức thích hợp về SQL và các hệ thống quản lý cơ sở dữ liệu là điều cần thiết để sử dụng chúng trong các chương trình của bạn một cách hiệu quả Cơ sở dữ liệu SQL lưu trữ bộ sưu tập dữ liệu theo hàng và cột. Bạn có thể truy xuất và cập nhật dữ liệu trong hệ thống quản lý cơ sở dữ liệu quan hệ (RDBMS) bằng ngôn ngữ SQL. Trong số nhiều cơ sở dữ liệu SQL có sẵn, phổ biến nhất là MySQL, PostgreSQL, Microsoft SQL Server và SQLite Chức năng tương tác với cơ sở dữ liệu trong Go nằm trong gói cơ sở dữ liệu/sql, một phần của thư viện chuẩn Gói cơ sở dữ liệu/sql tương tác với cơ sở dữ liệu SQL bằng trình điều khiển. Bạn có thể nhập gói trình điều khiển thích hợp cho RDBMS của mình và sử dụng gói đó để tương tác với cơ sở dữ liệu Bắt đầu với cơ sở dữ liệu SQL trong GoGói cơ sở dữ liệu/sql là giao diện chung cho cơ sở dữ liệu quan hệ. Để làm việc với một máy chủ cơ sở dữ liệu cụ thể, bạn sẽ cần sử dụng một trong nhiều trình điều khiển có sẵn Rất may, bạn không phải lo lắng về việc triển khai cụ thể ngoài trình điều khiển. Gói cơ sở dữ liệu/sql xử lý các hoạt động cơ sở dữ liệu độc lập với máy chủ mà bạn đang kết nối tới Một số trình điều khiển cơ sở dữ liệu Go phổ biến nhất là
Bạn có thể sử dụng danh sách trình điều khiển LibHunt để tìm tương đương cho các loại cơ sở dữ liệu khác. Danh sách cũng cho thấy mức độ phổ biến tương đối của từng hệ thống cơ sở dữ liệu Cài đặt và nhập trình điều khiển cơ sở dữ liệu GoKhi bạn đã tạo không gian làm việc Go và khởi tạo tệp mô-đun Go, hãy cài đặt trình điều khiển phù hợp với hệ thống cơ sở dữ liệu của bạn. Ví dụ: chạy một trong các lệnh sau trong thư mục không gian làm việc của bạn để cài đặt trình điều khiển MySQL hoặc SQLite go get -u github.com/go-sql-driver/mysql\ngo get github.com/mattn/go-sqlite3\n Sau khi bạn đã cài đặt trình điều khiển của mình, hãy nhập trình điều khiển đó để biết các tác dụng phụ bằng cách thêm tiền tố vào dấu gạch dưới trước gói. Ví dụ: để nhập trình điều khiển MySQL cùng với gói cơ sở dữ liệu/sql import (\n "database/sql"\n _ "github.com/go-sql-driver/mysql"\n)\n Bằng cách nhập gói trình điều khiển cho các tác dụng phụ, bạn có thể sử dụng nó để kết nối và thực hiện các thao tác trên cơ sở dữ liệu Kết nối với cơ sở dữ liệu SQL với GoSau khi nhập trình điều khiển cơ sở dữ liệu, bạn có thể tạo kết nối cơ sở dữ liệu bằng phương thức Mở của gói cơ sở dữ liệu/sql. Phương thức này lấy tên của trình điều khiển và đường dẫn đến cơ sở dữ liệu (đối với SQLite) hoặc chuỗi kết nối (đối với MySQL). Ví dụ: sử dụng một trong hai cách sau db, err := sql.Open("sqlite3", "models/testdb.db") // SQLite\n \ndb, err := sql.Open("mysql", "user:password@/dbname") // MySQL Khi bạn đã cố gắng mở kết nối, hãy nhớ kiểm tra lỗi if err != nil {\n log.Fatalln(err)\n}\n Tùy thuộc vào hệ thống cơ sở dữ liệu của bạn, phương thức Mở có thể trả về lỗi nếu cơ sở dữ liệu không tồn tại. Khi bạn đã kết nối với cơ sở dữ liệu, bạn có thể thực hiện các truy vấn và chuẩn bị các câu lệnh bằng cách sử dụng phiên bản cơ sở dữ liệu mà Open trả về Thực thi các lệnh SQLBạn có thể thực thi các lệnh SQL bằng phương thức Chuẩn bị của phiên bản cơ sở dữ liệu của mình. Phương thức Chuẩn bị nhận một lệnh SQL và trả về một câu lệnh đã chuẩn bị để thực thi cùng với một đối tượng lỗi. Ví dụ, nếu bạn muốn tạo một bảng mới command, err := db.Prepare("CREATE TABLE IF NOT EXISTS login(username TEXT, password TEXT)")\n Câu lệnh trên tạo một bảng có tên đăng nhập, nếu nó chưa tồn tại. Bảng mới có các trường tên người dùng và mật khẩu, mỗi loại TEXT Nếu bạn đang chèn các giá trị từ chương trình vào các truy vấn của mình, bạn có thể sử dụng ký hiệu dấu chấm hỏi (?) để biểu thị các trình giữ chỗ rồi chuyển các tham số khi thực thi câu lệnh command, err := db.Prepare("INSERT INTO login(username, password) values(?,?)")\n Khi bạn đã tạo một câu lệnh đã chuẩn bị, bạn có thể thực thi nó bằng phương thức Exec của nó. Phương pháp này cho phép bạn chuyển các giá trị tham số từ chương trình của bạn if err != nil {\n log.Fatalln(err)\n}\n 0Giá trị đầu tiên mà Exec() trả về là kết quả của truy vấn SQL trên cơ sở dữ liệu của bạn. Sử dụng kết quả truy vấn này, bạn có thể kiểm tra số hàng bị ảnh hưởng hoặc ID được chèn lần cuối if err != nil {\n log.Fatalln(err)\n}\n 1Tìm nạp kết quả truy vấnGói cơ sở dữ liệu/sql cho phép bạn truy vấn kết quả cơ sở dữ liệu bằng phương thức Truy vấn của phiên bản cơ sở dữ liệu rows, err := db.Query("SELECT * FROM User")\n \nif err != nil {\n return\n}\n Phương thức Truy vấn trả về cấu trúc Hàng mà bạn có thể sử dụng để làm việc với tập kết quả của mình. Ví dụ: bạn có thể sử dụng phương thức Tiếp theo của phiên bản hàng của mình để lặp lại nó và làm việc với các hàng riêng lẻ if err != nil {\n log.Fatalln(err)\n}\n 3Trong ví dụ trên, hai biến chuỗi—tên người dùng và mật khẩu—đại diện cho từng giá trị cột. Phương thức Quét giải mã hàng hiện tại thành các biến tương ứng đó Cơ sở dữ liệu SQL luôn có íchSử dụng cơ sở dữ liệu trong Go rất đơn giản với gói cơ sở dữ liệu/sql. Bạn có thể sử dụng nó để truy vấn và thực thi các lệnh SQL trong Go một cách dễ dàng Cơ sở dữ liệu SQL là cốt lõi của nhiều ứng dụng, đặc biệt là những ứng dụng xử lý các bộ dữ liệu lớn hoặc phức tạp. Bạn có thể sử dụng cơ sở dữ liệu như cơ sở dữ liệu SQLite trong bộ nhớ cho các dự án đơn giản của mình như quét web và xây dựng bot Kiến thức đúng đắn về SQL và các hệ thống quản lý cơ sở dữ liệu là điều cần thiết để sử dụng chúng trong các chương trình của bạn một cách hiệu quả. Tuy nhiên, nếu bạn chọn không học SQL, bạn có thể học cách sử dụng ORM để tương tác với cơ sở dữ liệu SQL trong Go Tôi nên sử dụng cơ sở dữ liệu nào với Go?Các hệ thống quản lý cơ sở dữ liệu được hỗ trợ
. MySQL, Oracle, Postgres, SQL Server, SQLite, and more.
Làm cách nào để nhập MySQL vào Golang?Create a main.go file and insert the following code: package main import ( "fmt" "database/sql" _ "github.com/go-sql-driver/mysql" ) func main() { db, err := sql. Open("mysql", "root:
Làm cách nào để kết nối với cơ sở dữ liệu mssql từ Golang?Sử dụng cơ sở dữ liệu SQL trong Golang . Điều kiện tiên quyết của Golang và SQL Sử dụng máy chủ Microsoft SQL. Cài đặt Microsoft SQL Server Tạo cơ sở dữ liệu SQL Server. Tạo bảng Nhắc nhở Xây dựng ứng dụng bảng điều khiển Golang. . Xây dựng gói cơ sở dữ liệu. . Thử nghiệm ứng dụng bảng điều khiển Golang cân nhắc thêm Làm cách nào để kết nối với cơ sở dữ liệu Go?Nhận xử lý cơ sở dữ liệu và kết nối . vào chính. go, bên dưới mã nhập bạn vừa thêm, hãy dán mã Go sau để tạo xử lý cơ sở dữ liệu. var db * sql. . Gần phía trên cùng của chính. go, ngay bên dưới khai báo gói, nhập các gói bạn cần để hỗ trợ mã bạn vừa viết. . Lưu chính. đi |