첨부파일 업데이트 쿼리좀 부탁드려요
본문
제가 다니는 교회홈페이지 봉사? 하고 있습니다.
재능기부라고 해야 하나요?
다른것은 다 괜찮은데 첨부파일 마이그레이션이 어렵네요.
그누보드 테이블
랭크업 table
SELECT `no` , `attach` FROM `rankup_board_bang` WHERE 1
맵인지 Object인지 개념이 없어서 설명은 못드리지만
attach필드에는 이렇게 들어있습니다.
a:2:{i:0;a:3:{s:5:"oname";s:24:"주보_2016년 6월 26일.hwp";s:5:"sname";s:18:"14668337774710.hwp";s:4:"dnum";i:8;}i:1;a:3: {s:5:"oname";s:13:"70세 이상.hwp";s:5:"sname";s:18:"14668337946238.hwp";s:4:"dnum";i:2;}}
insert into g5_board_file ( bo_table, wr_id , bf_no, bf_source ,bf_file,bf_download,bf_filesize , bf_width, bf_height,bf_type,bf_datetime)
SELECT `broad`, `no` , `attach` FROM `rankup_board_bang` WHERE 1
파싱을 해야 되나 어찌해야 할 바를 모르겠습니다.
일단
1. attach 컬럼이 is not null인것만 조회해서
insert해야 할것 같습니다.
2. g5_wirte_broad 테이블에
file이 있다고 update해야 할것 같고요.
질문이 아니라 거의 처음부터 끝까지 쿼리를 부탁드리는것이라 죄송합니다. ㅠㅠ
!-->!-->
답변 1
1. 그누보드의 경우 파일테이블이 별도로 되어 있기 때문에 bo_table과 wr_id값이 필요합니다.
2. 즉, 게시물을 올리시고 wr_id값을 가져온 뒤, 후작업으로 파일테이블에 인서트를 시켜야 되는데
- 쿼리문으로 바로 처리 하기에는 무리가 있어 보이니 php에서 attach필드를 후가공해서 인서트 해야 겠습니다.
3. attach필드의 값을 보아하니 serialize() 로 업데이트 시켜둔것 같은데, 랭크없 소스 확인해서 unserialize()로 풀어 확인시키는지 보는게 좋을 것 같습니다.
4. 랭크업 oname의 값은 bf_source에, sname의 값은 bf_file에 dnum은 bf_download 에 넣어주면 되겠네요.
- 좀더 정확하게 하려면 파일사이즈랑 유형도 등록해야 되는데 패스해도 크게 문제 없을듯 합니다.