Tác giả đã chọn các cô gái viết mã để nhận quyên góp như một phần của chương trình Write for quyên góp. Show
Giới thiệuMột đối tượng lớn nhị phân ( 7) là loại dữ liệu MySQL có thể lưu trữ dữ liệu nhị phân như hình ảnh, đa phương tiện và các tệp PDF.Khi tạo các ứng dụng yêu cầu cơ sở dữ liệu kết hợp chặt chẽ, trong đó hình ảnh nên đồng bộ với dữ liệu liên quan (ví dụ: cổng thông tin nhân viên, cơ sở dữ liệu sinh viên hoặc ứng dụng tài chính), bạn có thể thấy thuận tiện để lưu trữ hình ảnh như hộ chiếu của sinh viên Ảnh và chữ ký trong cơ sở dữ liệu MySQL cùng với các thông tin liên quan khác. Đây là nơi loại dữ liệu MySQL 7 xuất hiện. Cách tiếp cận lập trình này giúp loại bỏ sự cần thiết phải tạo một hệ thống tệp riêng biệt để lưu trữ hình ảnh. Sơ đồ cũng tập trung vào cơ sở dữ liệu, làm cho nó di động và an toàn hơn vì dữ liệu được cách ly với hệ thống tệp. Tạo bản sao lưu cũng liền mạch hơn vì bạn có thể tạo một tệp kết xuất MySQL duy nhất chứa tất cả dữ liệu của bạn.Lấy dữ liệu nhanh hơn và khi tạo hồ sơ, bạn có thể chắc chắn rằng các quy tắc xác thực dữ liệu và tính toàn vẹn tham chiếu được duy trì đặc biệt là khi sử dụng các giao dịch MYSQL. Trong hướng dẫn này, bạn sẽ sử dụng kiểu dữ liệu MySQL 7 để lưu trữ hình ảnh với PHP trên Ubuntu 18.04.Điều kiện tiên quyếtĐể làm theo với hướng dẫn này, bạn sẽ cần những điều sau:
Bước 1 - Tạo cơ sở dữ liệuBạn sẽ bắt đầu bằng cách tạo một cơ sở dữ liệu mẫu cho dự án của bạn. Để thực hiện việc này, SSH vào máy chủ của bạn và sau đó chạy lệnh sau để đăng nhập vào máy chủ MySQL của bạn dưới dạng root:
Nhập mật khẩu gốc của cơ sở dữ liệu MySQL của bạn và nhấn 1 để tiếp tục.Sau đó, chạy lệnh sau để tạo cơ sở dữ liệu. Trong hướng dẫn này, chúng tôi sẽ đặt tên cho nó 2:
Khi cơ sở dữ liệu được tạo, bạn sẽ thấy đầu ra sau:
Tiếp theo, tạo tài khoản 3 trên máy chủ MySQL và nhớ thay thế 4 bằng mật khẩu mạnh:
Bạn sẽ thấy đầu ra sau:
Để cấp 3 Đặc quyền đầy đủ trên cơ sở dữ liệu 2, chạy:
Đảm bảo bạn nhận được đầu ra sau:
Cuối cùng, hãy xóa bảng đặc quyền để MySQL tải lại quyền:
Đảm bảo bạn thấy đầu ra sau:
Bây giờ, cơ sở dữ liệu 2 và 3 đã sẵn sàng, bạn sẽ chuyển sang tạo bảng 9 để lưu trữ các sản phẩm mẫu. Bạn sẽ sử dụng bảng này sau để chèn và truy xuất các bản ghi để chứng minh cách hoạt động của MySQL 7.Đăng xuất từ máy chủ MySQL:
Sau đó, đăng nhập lại với thông tin đăng nhập của 3 mà bạn đã tạo: 0Khi được nhắc, hãy nhập mật khẩu cho 3 và nhấn 1 để tiếp tục. Tiếp theo, chuyển sang cơ sở dữ liệu 2 bằng cách nhập các mục sau: 1Khi cơ sở dữ liệu 2 được chọn, MySQL sẽ hiển thị: 2Tiếp theo, tạo bảng 9 bằng cách chạy: 3Lệnh này tạo ra một bảng có tên 9. Bảng có bốn cột:
Bạn đã sử dụng bộ nhớ 2 3 cho bảng để hỗ trợ một loạt các tính năng bao gồm các giao dịch MYSQL. Sau khi thực hiện điều này để tạo bảng 9, bạn sẽ thấy đầu ra sau: 4Đăng xuất từ máy chủ MySQL của bạn:
Bạn sẽ nhận được đầu ra sau 6Bảng 9 hiện đã sẵn sàng để lưu trữ một số hồ sơ bao gồm các sản phẩm hình ảnh và bạn sẽ điền nó với một số sản phẩm trong bước tiếp theo.Bước 2 - Tạo tập lệnh PHP để kết nối và điền vào cơ sở dữ liệuTrong bước này, bạn sẽ tạo một tập lệnh PHP sẽ kết nối với cơ sở dữ liệu MySQL mà bạn đã tạo trong bước 1. Tập lệnh sẽ chuẩn bị ba sản phẩm mẫu và chèn chúng vào bảng 9.Để tạo mã PHP, hãy mở một tệp mới với trình soạn thảo văn bản của bạn: 7Sau đó, nhập thông tin sau vào tệp và thay thế 4 bằng mật khẩu 3 mà bạn đã tạo trong bước 1:/var/www/html/config.php 8Lưu và đóng tập tin. Trong tệp này, bạn đã sử dụng bốn hằng số PHP để kết nối với cơ sở dữ liệu MySQL mà bạn đã tạo trong bước 1:
Dòng sau trong tệp của bạn bắt đầu đối tượng dữ liệu PHP (PDO) và kết nối với cơ sở dữ liệu MySQL: 9Đến cuối tệp, bạn đã đặt một vài thuộc tính PDO:
Bạn sẽ bao gồm tệp 0 trong hai tập lệnh PHP mà bạn sẽ tạo tiếp theo để chèn và truy xuất các bản ghi tương ứng.Đầu tiên, hãy tạo tập lệnh PHP 1 để chèn các bản ghi vào bảng sản phẩm: 0Sau đó, thêm thông tin sau vào tệp 1:/var/www/html/insert_products.php 1Lưu và đóng tập tin. Trong tệp này, bạn đã sử dụng bốn hằng số PHP để kết nối với cơ sở dữ liệu MySQL mà bạn đã tạo trong bước 1: 9: Hằng số này giữ tên của cơ sở dữ liệu 2. 1: Biến này giữ tên người dùng 3. 3: Hằng số này lưu trữ MySQL 4 của tài khoản 3. 2 6: Điều này thể hiện máy chủ nơi cơ sở dữ liệu cư trú. Trong trường hợp này, bạn đang sử dụng máy chủ 7.Dòng sau trong tệp của bạn bắt đầu đối tượng dữ liệu PHP (PDO) và kết nối với cơ sở dữ liệu MySQL: Đến cuối tệp, bạn đã đặt một vài thuộc tính PDO: 8: Thuộc tính này hướng dẫn PDO ném một ngoại lệ có thể được ghi lại cho mục đích gỡ lỗi. 9: Tùy chọn này tăng bảo mật bằng cách nói với công cụ cơ sở dữ liệu MySQL thực hiện chuẩn bị thay vì PDO. 3Bạn sẽ bao gồm tệp 0 trong hai tập lệnh PHP mà bạn sẽ tạo tiếp theo để chèn và truy xuất các bản ghi tương ứng.Đầu tiên, hãy tạo tập lệnh PHP 1 để chèn các bản ghi vào bảng sản phẩm: 4Sau đó, thêm thông tin sau vào tệp 1:Trong tệp, bạn đã bao gồm tệp 3 ở đầu. Đây là tệp đầu tiên bạn tạo để xác định các biến cơ sở dữ liệu và kết nối với cơ sở dữ liệu. Tệp cũng khởi tạo một đối tượng PDO và lưu trữ nó trong biến 4.Tiếp theo, bạn đã tạo ra một mảng dữ liệu của sản phẩm sẽ được đưa vào cơ sở dữ liệu. Ngoài 2 và 6, được điều chế như các chuỗi và giá trị số tương ứng, tập lệnh sử dụng chức năng 7 của Php, để đọc hình ảnh từ nguồn bên ngoài và chuyển chúng dưới dạng chuỗi đến cột 0.Tiếp theo, bạn đã chuẩn bị một câu lệnh SQL và sử dụng câu lệnh PHP 9 để chèn từng sản phẩm vào cơ sở dữ liệu.Để thực thi tệp 1, hãy chạy nó trong cửa sổ trình duyệt của bạn bằng URL sau. Hãy nhớ thay thế 1 bằng địa chỉ IP công khai của máy chủ của bạn: 5Sau khi thực hiện tệp, bạn sẽ thấy một thông báo thành công trong trình duyệt của bạn xác nhận các bản ghi đã được đưa vào cơ sở dữ liệu. Tiếp theo, thực thi tệp 11 trong trình duyệt web bằng cách nhập địa chỉ sau: 6Sau khi chạy tệp 11 trong trình duyệt của bạn, bạn sẽ thấy bảng HTML với danh sách các sản phẩm và hình ảnh liên quan.Điều này xác nhận rằng tập lệnh PHP để truy xuất hình ảnh từ MySQL đang hoạt động như mong đợi. Sự kết luậnTrong hướng dẫn này, bạn đã sử dụng kiểu dữ liệu MySQL 7 để lưu trữ và hiển thị hình ảnh với PHP trên Ubuntu 18.04. Bạn cũng đã thấy những lợi thế cơ bản của việc lưu trữ hình ảnh trong cơ sở dữ liệu trái ngược với việc lưu trữ chúng trong một hệ thống tệp. Chúng bao gồm tính di động, bảo mật và dễ dàng sao lưu. Nếu bạn đang xây dựng một ứng dụng như sinh viên Cổng thông tin hoặc cơ sở dữ liệu của nhân viên, yêu cầu thông tin và hình ảnh liên quan được lưu trữ cùng nhau, thì công nghệ này có thể được sử dụng rất nhiều cho bạn.Để biết thêm thông tin về các loại dữ liệu được hỗ trợ trong MySQL, hãy làm theo hướng dẫn kiểu dữ liệu MySQL. Nếu bạn quan tâm đến nội dung tiếp theo liên quan đến MySQL và PHP, hãy xem các hướng dẫn sau:
Kiểu dữ liệu nào được sử dụng để lưu trữ hình ảnh trong MySQL?Giới thiệu.Đối tượng lớn nhị phân (Blob) là loại dữ liệu MySQL có thể lưu trữ dữ liệu nhị phân như hình ảnh, đa phương tiện và các tệp PDF.Binary Large Object ( BLOB ) is a MySQL data type that can store binary data such as images, multimedia, and PDF files.
Làm thế nào chúng ta có thể lưu trữ hình ảnh trong cơ sở dữ liệu MySQL?Chèn tệp hình ảnh trong MySQL.MySQL có kiểu dữ liệu BLOB (đối tượng lớn nhị phân) có thể chứa một lượng lớn dữ liệu nhị phân..... Tạo bảng cơ sở dữ liệu..... Cấu hình cơ sở dữ liệu (dbconfig.php) .... Hình ảnh tải lên mẫu..... Lưu trữ tệp hình ảnh trong cơ sở dữ liệu (tải lên. .... Truy xuất hình ảnh từ cơ sở dữ liệu (Xem. .... Conclusion.. Kiểu dữ liệu nào được sử dụng cho hình ảnh trong SQL?Kiểu dữ liệu hình ảnh trong SQL Server đã được sử dụng để lưu trữ các tệp hình ảnh.Gần đây, Microsoft bắt đầu đề xuất sử dụng Varbinary (MAX) thay vì hình ảnh để lưu trữ một lượng lớn dữ liệu trong một cột duy nhất vì hình ảnh sẽ được nghỉ hưu trong phiên bản tương lai của MS SQL Server.VARBINARY(MAX) instead of IMAGE for storing a large amount of data in a single column since IMAGE will be retired in a future version of MS SQL Server.
Kiểu dữ liệu của hình ảnh trong cơ sở dữ liệu là gì?Hình ảnh là một loại dữ liệu có độ dài thay đổi có thể lưu trữ dữ liệu nhị phân.Hình ảnh có thể chứa tới 2GB dữ liệu.variable-length data type that can store binary data. IMAGE can hold up to 2GB of data. |