簡體   English   中英

如何在mysql數據庫中的同一字段中存儲圖像和文本?

[英]how to store images and text in same field in a mysql database?

我需要將文本和圖像都存儲在同一個字段中嗎? 如何使用 mysql 數據庫在 php 中實現? 我過去曾使用 BLOB 來存儲圖像。 我應該使用哪種數據類型來解決這個問題?

這將如何運作......?

首先要說的是,不要那樣做! 數據庫中的列應該是原子的,這意味着它們包含一條且只有一條信息。 這是第一范式的基本規則。 如果您試圖將多個數據項塞入一列,您將違反該規則,您將在以后經歷一個痛苦的世界。

理論上,您可以使用訪問數據庫的任何前端將數據序列化為字符串並將其存儲(例如,在 php 中,您可以執行$dataToStore = serialize (array 'Some string', $someData); ). 然后您將使用 unserialize 將圖像數據和文本提取回單獨的項目。

但是你為什么要這樣做呢? 這是您不需要做的額外工作,目的是使您的數據庫設計不如預期的最佳。 簡單地向要存儲數據的表中添加另一列有什么問題,一列用於文本,一列用於圖像?

如果您認為您的方法沒有問題,那么請從受雇處理充滿序列化數據的數據庫的人那里獲取它。 這是一個巨大的問題。 這使得使用數據庫幾乎不可能。 您必須將數據提取到您正在使用的腳本語言中並反序列化,然后才能對其進行任何操作。 您不能使用 SQL 語句來查詢序列化數據。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM