色尼玛亚洲综合影院,亚洲3atv精品一区二区三区,麻豆freexxxx性91精品,欧美在线91

數據庫系統中文件附件保存的最佳辦法

  軟件開發人員,都會碰到這個問題,也都會被這個問題困住一兩個星期。

  以 Java/JDK 為例, JDBC 驅動程序中,對這個問題也經過多年、歷經多次版本升級,才能解決。而且代碼還不能跨數據庫。 

  C#也一樣,總之是麻煩。

  其實,這個問題可以有另一思路,更簡單,更高效。值得系統架構師們考慮:

  1.在數據庫中,單獨用一個表,處理所有各類文件,只保存文件的信息

TT_BINARY_DATA_INFO (bin_uuid, file_size, file_name,data_type,compress_format,memo,created_dt,created_by,updated_dt,updated_by,updated_cnt)

  上面的表中, compress_format 為文件壓縮格式,可以不壓縮,也可以用zip 壓縮格式,或者其它。

  2.在指定目錄中,保存文件內容(按年月劃分子目錄,或者不分子目錄),文件名為 uuid.dat

  采用這一種方案的原因是,數據庫系統通常處理不好二進制數據,要么數據多了很占用磁盤空間,導致數據庫性能下降、備份時間更長;要么是文件大了無法保存。而采用以上方案,這些問題都不存在:備份更快了;文件大了也能輕松應付;程序更容易寫;不論哪種數據庫都可以用。

  這一解決方案,目前在國內基本無人知曉,但在國外,舉例來說,Bugzilla/phpBB 都提供了選項,用戶可以把文件內容保存在數據庫中、或者保存在指定目錄中。并且,它們的文檔中,都推薦把文件內容,存放在指定目錄中下。想必它們經過認真的對比,發現“把文件內容,存放在指定目錄中下”更好吧。我也覺得這種方法更好,自從知道這種解決方法,我把我所負責的項目,都轉換成這種方式了,效果很不錯。

it知識庫數據庫系統中文件附件保存的最佳辦法,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 拉萨市| 兴国县| 大埔区| 扶余县| 哈密市| 定边县| 肥城市| 项城市| 怀宁县| 南平市| 和平县| 吴忠市| 白玉县| 沁水县| 大渡口区| 邵阳市| 怀安县| 和顺县| 汪清县| 那曲县| 泸州市| 砀山县| 灵川县| 隆化县| 武功县| 额敏县| 江城| 兴城市| 武川县| 合阳县| 阿拉善右旗| 浏阳市| 吉林省| 灵武市| 苏州市| 贵阳市| 芮城县| 天台县| 南投县| 微博| 靖江市|