[SQL] 단지 SQL과 파일에 MySQL 데이터베이스에서 물방울 내보내기
SQL단지 SQL과 파일에 MySQL 데이터베이스에서 물방울 내보내기
내가 MySQL 데이터베이스에 BLOB 필드에 이미지 데이터가 저장된 테이블을 가지고있다. 단지 SQL을 사용하여 파일 시스템의 파일에 그 이미지를 내보낼 수있는 방법이 있습니까? 이미지는 {imageId} .JPG 이름을 지정해야합니다
나는 자바이든이 작업을 수행하기 쉽지만 그냥 SQL 스크립트를 사용 가능하다는 것을 알아?
해결법
-
==============================
1.내가 생각처럼 안 ...
내가 생각처럼 안 ...
drop procedure if exists dump_image; delimiter // create procedure dump_image() begin declare this_id int; declare cur1 cursor for select imageId from image; open cur1; read_loop: loop fetch cur1 into this_id; set @query = concat('select blob_field from image where imageId=', this_id, ' into outfile "/tmp/xyz-', this_id,'.jpg"'); prepare write_file from @query; execute write_file; end loop; close cur1; end // delimiter ;
오류에도 불구하고
mysql> call dump_image(); ERROR 1329 (02000): No data - zero rows fetched, selected, or processed
ls -1 /tmp/xyz*
-
==============================
2.INTO를 사용하여, 당신은 당신이 파일을 저장하고자하는 위치에 MySQL의 사용자로 쓰기 권한이 가정, 당신은 할 수 있습니다 :
INTO를 사용하여, 당신은 당신이 파일을 저장하고자하는 위치에 MySQL의 사용자로 쓰기 권한이 가정, 당신은 할 수 있습니다 :
SELECT id, blob INTO DUMPFILE '/tmp/path' FROM table;
불행하게도, MySQL의에서 표현식 / 변수로 덤프 파일을 지정할 수 없습니다. 저장 프로 시저 및 사용 변수에 싸서 경우, 당신이 이것을 달성 할 수있다.
from https://stackoverflow.com/questions/4646533/exporting-blob-from-mysql-database-to-file-with-only-sql by cc-by-sa and MIT license
'SQL' 카테고리의 다른 글
[SQL] 나는 정렬을 이해하지? (MySQL은, RDBMS 문자 세트) (0) | 2020.07.23 |
---|---|
[SQL] 어떻게 쿼리를 실행하기 위해 R 스크립트 내로 .SQL 파일의 내용을 읽어? (0) | 2020.07.23 |
[SQL] 오라클 : 어떻게 이상의 범위 "에 의해 그룹"에? (0) | 2020.07.23 |
[SQL] 다른 테이블에 외래 키를 포함하는 테이블에서 행을 삭제하는 방법 (0) | 2020.07.23 |
[SQL] 두 개의 SQL 쿼리를 가입 (0) | 2020.07.23 |