I posted a problem I was having with this, but unfortunately nobody
responded. Regardless, here are the methods I've used:

1) using LOAD_FILE():
    
    INSERT INTO table_name (column_name)
        VALUES(LOAD_FILE('/absolute/path/to/file'));

In windows, of course, the path to the file should probably follow the
"c:\path\to\file" form. This will also only work from the server machine.

2) using a piece of middleware (PHP, Perl, etc.) to create a query that
contains the contents of the file in the INSERT. In PHP, something like this
suffices:

    $filename = '/absolute/path/to/file';
    $fh = fopen($filename,'r');
    $query = 'INSERT INTO table_name (column_name) VALUES("';
    $query .= addslashes(fread($fh,filesize($filename)));
    $query .= '")';
    $res = mysql_query($query);

With either method, the amount of memory you allocate for MySQL (in my.cnf)
will determine how large of a file you can insert into your table (BLOB
columns can contain 65535 bytes, MEDIUMBLOBs ~16MB, and LONGBLOBs ~4GB).
I've had difficulty ("out of memory" errors, corrupted tables, NULL values)
inserting values larger than 2MB in LONGBLOB columns, though, so be
forewarned.


-- 
shawn allen | [EMAIL PROTECTED]



> I need to store large files in a MySQL database (in Windows).  To do
> this, I have created a table that has a BLOB column.  How can I insert
> the files into this table?
> 
> Thanks,  
> 
> Ron
> 
> 
> ---------------------------------------------------------------------
> Before posting, please check:
>  http://www.mysql.com/manual.php   (the manual)
>  http://lists.mysql.com/           (the list archive)
> 
> To request this thread, e-mail <[EMAIL PROTECTED]>
> To unsubscribe, e-mail <[EMAIL PROTECTED]>
> Trouble unsubscribing? Try: http://lists.mysql.com/php/unsubscribe.php
> 


---------------------------------------------------------------------
Before posting, please check:
   http://www.mysql.com/manual.php   (the manual)
   http://lists.mysql.com/           (the list archive)

To request this thread, e-mail <[EMAIL PROTECTED]>
To unsubscribe, e-mail <[EMAIL PROTECTED]>
Trouble unsubscribing? Try: http://lists.mysql.com/php/unsubscribe.php

Reply via email to