Mysql

如何使用 phpMyAdmin 在 MySQL 數據庫中儲存 mp3 文件?

  • April 19, 2016

我是數據庫新手,但我希望我的網站有一個數據庫來儲存 mp3 文件,所以後來我使用 jplayer 在我的網站上播放它們。

他們說有兩種方法可以在數據庫中儲存數據(在這種情況下是 mp3 文件):

  1. 通過將實際文件本身儲存在數據庫中。
  2. 通過僅儲存特定的文件 URL、地址、位置或元數據等。

我的問題是什麼是正確的方法,我該如何在 phpMyAdmin 中做到這一點?

在我個人看來(但是我也是數據庫新手),我希望儲存相對 URL,這將是 VARCHAR 從這裡你可以儲存文件的相對路徑(從哪裡呼叫腳本)並以這種方式載入文件。

但是,為您的表編寫 SQL 可能也是值得的。以防萬一您需要在開始時更改或調整表結構,它會使更改變得更簡單。所以它看起來像這樣:

create database music;

use music;

create table tbl_album(
   album_id int(5) not null auto_increment,
   album_name varchar(50)  not null,
   album_artist varchar(50) not null,
   album_genre varchar(50),
   ablum_year varchar(4),
   primary key(album_id)
);

create table tbl_tracks(
   track_id int(5) not null auto_increment,
   track_number int(2),
   track_name varchar(50) not null,
   album_id int(5),
   track_url varchar(100) not null,
   primary key(track_id),
   foreign key (album_id) references tbl_album(album_id)
);

PS:如果您確實選擇為您的表編寫 SQL,我會推薦 MySQL 工作台,它是免費的並且是一個很好的工具(http://mysqlworkbench.org/

Dan Craven 回答了您問題的前半部分,我同意最好將文件的路徑而不是文件本身儲存在數據庫中。MySQL 完全能夠將完整的 MP3 文件儲存為 BLOB,但在此過程中可能會遇到一些性能問題。這部分是一個基於意見的問題——沒有通用的“正確方法”,但我認識的大多數人會將文件儲存在磁碟上,而只儲存數據庫中的路徑。

關於第二部分,phpMyAdmin 能夠處理儲存在數據庫中的文件,但這並不是您真正想要做的。您需要開發自己的自定義應用程序(或找到一個)來處理通過 jplayer 載入文件。phpMyAdmin 真的是供數據庫管理員使用他們的數據庫,而不是供最終使用者訪問數據。如果您決定走這條路,您可以使用 phpMyAdmin 將文件上傳到數據庫中,但是您可能還想編寫一些定制的和特定於您手頭任務的內容。

引用自:https://dba.stackexchange.com/questions/102211