Bạn đang xem: Lưu đường dẫn ảnh vào database
Một ảnh chỉ sử dụng cho một bảng
Việc một ảnh chỉ dùng cho 1 bảng là việc thịnh hành và liên tiếp với phần đông hình ảnh riêng viết và đặc trưng như: logo, banner,... Những hình ảnh này được áp dụng nhiều nhưng con số lại vô cùng ít cùng cần vận tốc lấy nhanh.

Ví dụ trên đây dễ dàng là avata của tín đồ dùng.Câu lệnh lấy hình ảnh chỉ dễ dàng như sau :
SELECT * FROM avata WHERE user_id = ?Ưu điểm : dễ dàng sử dụng, thao tác nhanh chóng,...Nhược điểm : chúng ta chỉ hoàn toàn có thể sử dụng 1 ảnh với 1 user.
Một ảnh chỉ dùng cho nhiều bảng
Có vô cùng nhiều phương pháp để thiết kế và thực hiện cho sự việc này, ở đây mình đưa ra những cách kiến tạo mà mình cho là lựa chọn tốt nhất đối với mọi người.1. Biện pháp truyền thốngThiết dữ liệu theo dạng sau.

# đem avata của user tất cả name là "Tuan"select * from image where user_id = (select users.id from users where users.name = "Tuan") & product_id is null# Đó là phương pháp lấy thường thì của chúng ta. Mà lại cũng có thể viết ngắn gọn hơn bằng phương pháp dùng join
SELECT image.* FROM image
JOIN users on users.id = user_id where users.name = "Tuan"#Tương từ bỏ ta hoàn toàn có thể dùng đến producdvhnghean.edu.vn
Kết quả.

Thiết dữ liệu theo hình thức sau.

Sql query:
-- thử join bảng image cùng users vào xem tác dụng thu được như thế nào nhé :DSELECT * FROM images JOIN users ON users.id = relation_id-- Còn đấy là cách họ thao tác để lấy hình ảnh của người tiêu dùng sử dùng type =))SELECT images.* FROM imagesjoin users on users.id = relation_id
WHERE relation_id = 2 & type = "user"Kết quả


Cổ điểm theo phong thái mở rộng lớn


1 | user |
2 | product |
3 | user, product |
Xem thêm: Top 10+ Công Viên Đẹp Ở Hà Nội, Mở Cửa Vui Chơi Miễn Phí, Top 10 Công Viên Đẹp Nhất Hà Nội
Cảm ơn các bạn đã đọc nội dung bài viết của bản thân . Mọi chủ kiến đóng góp xin vui lòng bình luận bên dưới, mình đang tiếp thu và sửa đổi nếu có gì không đúng sót. Thank you!
Để lưu hình ảnh vào đại lý dữ liệu, các bạn cần chú ý rằng trong Database kiểu tài liệu được Image được lưu trữ dưới dạng mảng byte<>. Chính vì vậy để lưu hình ảnh(Image) vào Database không có cách nào không giống là bạn phải chuyển hình ảnh(Image) mà bạn có nhu cầu lưu vào Database dưới dạng mảng byte<> sau đó mới tiến hành chèn vào Database. Để đưa một Image bên dưới dạng mảng byte<> bạn sử dụng đối tượng người dùng FileStream, kế tiếp tiến hành chèn vào cơ sở tài liệu như bình thường. Chúc chúng ta vui !
vấn đáp kèm Trích dẫn
Junior member

khanhthuy : Vậy là chúng ta chưa bao giờ lưu ảnh vào database bên dưới dạng nhị phân? Theo chúng ta thì "tốn tài nguyên hơn" là như vậy nào. Hiển thị một hình ảnh lưu nhị phân thì có nhu cầu các gì "phức tạp hơn hết sức nhiều" đối với lưu đường dẫn?
Dark thấy cực kỳ kỳ quặc là chúng ta không nắm rõ việc mình đang có tác dụng là gì, ưu điểm yếu là nắm nào mà cứ so sánh hồn nhiên, đặc điểm này hay hơn cái kia.
chúng ta có thể nói rõ hơn cho bạn hiểu hơn về sự việc này được không. Mình new học đề nghị cũng có khá nhiều cái phải học hỏi.
trả lời kèm Trích dẫn
Junior member
Bạn nói cách khác rõ hơn cho doanh nghiệp hiểu rộng về vụ việc này được không. Mình mới học phải cũng có không ít cái yêu cầu học hỏi.
Nếu bạn chăm chỉ để ý một chút sẽ hiểu nguyên nhân khi có tác dụng website người ta lại lưu đường dẫn. Tuy vậy không phải khi nào người ta cũng lưu đường truyền của file vào database. Việc lưu nắm nào còn tùy trực thuộc vào mục đích sử dụng.Thử phân tích một ít nhé. Giả dụ lưu file(nói chung, file ảnh cũng tương tự) vào database thì nên làm mọi gì? y như bạn nguoidanongxala nói bên trên kia, đề xuất đọc file dưới dạng binary, gửi thành byte<> nhằm lưu trong database. Khi nào cần file này lại đọc byte<> từ database lên,chuyển lại thành file.Còn bí quyết lưu đường dẫn, chắc rằng bạn đang rõ.Với biện pháp lưu file vào database, sẽ gặp mặt phải sự việc về tài nguyên của hệ thống khi có tương đối nhiều request mang đến file đó thuộc lúc. Với trang web thì việc này là hay xuyên, vì thế người ta ko dùng phương pháp lưu hình ảnh vào database với website(thực tế vẫn có vài trick để khắc phục câu hỏi này).Tuy nhiên nếu con số request không lớn, lại sở hữu yêu cầu thống trị các file, bảo mật thông tin file ... Thì bài toán lưu file vào database lại là lựa chọn xuất sắc hơn.Đại khái là nó bao gồm vài điểm như zầy ^^!