There are a couple of ways of dong this, depending on the details of your scenario:
LOAD DATA INFILE
You probably want something like this:
LOAD DATA LOCAL INFILE '/path/to/file/data_file.csv'
IGNORE
INTO TABLE `databasename`.`tablename`
CHARACTER SET utf8
FIELDS
TERMINATED BY '\n'
OPTIONALLY ENCLOSED BY '"'
IGNORE 1 LINES
(column1)
SHOW WARNINGS;
This will import from /path/to/file/data_file.csv
into databasename.tablename
, with each complete line in the text file being imported into a new row in the table, with all the data from that line being put into the column called column1
. More details here.
LOAD_FILE
Or you could use the LOAD_FILE function, like this:
UPDATE table
SET column1=LOAD_FILE('/path/to/file/data_file.csv')
WHERE id=1;
This will import the contents of the file /path/to/file/data_file.csv
and store it in column1
of the row where id=1
. More details here. This is mostly intended for loading binary files into BLOB
fields, but you can use it to suck a whole text file into a single column in a single row too, if that's what you want.
Using a TEXT Column
For loading large text files, you should use a column of type TEXT - it's can store very large amounts of text with no problems - see here for more details.