2012-04-30 17 views
6

私はMySQLを使用してビデオファイルをデータベースに保存しようとしますが、どのようにして ビデオファイルをデータベースに保存するのか分かりません。私は次のクエリを試してみるが、うまくいかなかった。mysqlを使ってビデオをデータベースに保存する方法は?

 CREATE TABLE GAME (
       GAME_ID INTEGER NOT NULL PRIMARY KEY, 
       GAME_NAME VARCHAR (20), 
       VIDEO LONGBLOB); 


INSERT INTO GAME VALUES(3, "Termonator2", 
LOAD_FILE("C:\Users\Public\Videos\Sample Videos")); 

私に参考またはヒントを教えてください。
ご協力いただければ幸いです。

+5

私は、サーバー自体にビデオを保存し、ファイル名をデータベースに格納することをお勧めします。 –

+1

パスをファイル名として使用しました。 –

+0

しかし、うまくいかなかったのは何ですか?正確に何が起こったのですか?エラー? –

答えて

6

パスにスラッシュを2つ追加する必要があります。
次のquery.itの仕事を私と一緒にチェックしてください。
使用この

​​

代わりの

INSERT INTO GAME VALUES(3, "Termonator2", 
LOAD_FILE("C:\Users\Public\Videos\Sample Videos")); 

ただ、Cであなたのビデオを置く.....

+0

はい、エスケープする必要がある特殊文字がいくつかあります。ここでは、 "ドキュメント"(http://dev.mysql.com/doc/refman/5.7/en/string-literals.html)に "文字列リテラル"のリストがあります。 – IgniteCoders

7

ビデオファイルをファイルディレクトリに保存し、そのファイル名をMySQLデータベースに保存することをお勧めします。

このようにして、軽いデータベースを保持することができます。

1

ではなく

C:\Users\Public\Videos\Sample Videos 
2

LOAD_FILE("C:\Users\Public\Videos\Sample Videos")

C:\Users\Public\Videos\Sample Videos\filename.ending 

がディレクトリでみてください。あなたはビデオ名と拡張子を忘れました。

Should be: LOAD_FILE("C:\Users\Public\Videos\Sample Videos\videoname.avi")などです。

しかし、誰もが指摘したように、これは悪い考えです。ビデオをデータベースに保存しないでください。

0

を楽しむ:どこかのディレクトリ。ユーザー/動画全体が隠されているようです。私はC:/ videosディレクトリを作成し、それに私のビデオを配置しました!