在数据库中插入视频

时间:2014-01-21 10:50:12

标签: mysql sql database sql-insert

以下是在mySql数据库中插入视频的查询。

insert into media(name,data) values ('image', load_file('C:\ao.mp4'))

该表有2列,名称和数据,其中数据具有BLOB数据类型。第一列添加到表中,但第二列返回null。

我已经阅读了here提供的答案,但它无效。

2 个答案:

答案 0 :(得分:2)

创建表格

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

您的插入查询与此

类似
INSERT INTO media values ('File_Name',LOAD_FILE("C:\\Users\\Public\\Videos\\Sample Video\\ao.mp4"));
  

load_file()的结果大于max_allowed_pa​​cket(1048576)

您可能必须为客户端(您正在运行以执行导入)和正在运行并接受导入的守护程序mysqld更改它。

对于客户端,您可以在命令行中指定它:

mysql --max_allowed_packet=100M -u root -p database < dump.sql

另外,更改mysqld部分下的my.cnf或my.ini文件并进行设置 max_allowed_pa​​cket = 100M或者您可以在连接到同一服务器的MySQL控制台中运行这些命令:

set global net_buffer_length=1000000; 
set global max_allowed_packet=1000000000;

(对数据包大小使用非常大的值。)

找到.ini文件

要配置客户端和实用程序应用程序,请在Windows安装目录中创建新的my.ini文件。更多信息 here

答案 1 :(得分:1)

我认为你有两个选择:

  1. 创建多个字段:VIDEO1,VIDEO2等...并将视频代码分开。
  2. 增加max_allowed_pa​​cket:source link
  3.   

    更改my.ini文件。在文件中包含[mysqld]下的单行

         

    max_allowed_pa​​cket = 500M

         

    现在重启MySQL服务,你就完成了

    How to locate my.ini file.