I have a table which has column of type binary.
---------------+---------+----------+-------------+
| appid | imei | request_timestamp | city_id | state_id | country_id |
+-------+------------------+-------------------+---------+----------+------------+-----------+
| 45861 | 101111000110 | 1327119595 | 700 | 43 | 5 |
| 93502 | 1000011001010 | 1327119595 | 305 | 490 | 9 | |
+-------+------------------+-------------------+---------+----------+------------+-------
SELECT * INTO OUTFILE 'test.txt' FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"' LINES TERMINATED
BY '\n' FROM log_track_tbl_382 ,the csv file has data in the form
45861,"101111000110\0\0\0\0",1327119595,700,43,5
93502,"1000011001010\0\0\0",1327119595,305,490,9
The binary column is not written to txt file in proper format. Can any one suggest what should be the proper mysql command to preserve binary data in the file . When i run this command from mysql prompt
Try to Use DUMPFILE in place of OUTFILE.
Selecting this option over OUTFILE results in the query results being written as a single line, omitting column or line terminations. This is useful when exporting binary data such as a graphic or a Word file. Keep in mind that you cannot choose OUTFILE when exporting a binary file, or the file will be corrupted.
Hote that a DUMPFILE query must target a single row; combining output from two binary files doesn’t make any sense, and an error will be returned if you attempt it.
To export, you can encode binary columns:
SELECT appid, to_base64(imei), request_timestamp, city_id, state_id, country_id
FROM some_table
INTO OUTFILE 'test.txt'
FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"' LINES TERMINATED BY '\n'
FROM log_track_tbl_382
Then to import, you will have to decode the binary data
LOAD DATA LOCAL INFILE 'test.txt' INTO TABLE some_table;
UPDATE some_table SET imei = from_base64(imei);
Of course, if you have bad data to begin with, you need to know exactly what is bad and how to undo the operation that made it bad.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With