묻고답하기
게시판 글을 my sql에서 올리려고합니다
2014.08.12 17:37
문서 테이블에서 엑셀로 내보내기 해서 만들어진 엑셀파일에 게시글을 더 추가한다음,
다시 my sql에서 Import 기능을써서 게시글을 추가한 엑셀파일을 올려 한번에 여러개 게시물을 올리려고 합니다
게시판에 일일이 글을올려서 늘려도 되지만 너무 손도 많이가고 시간도 오래걸리고해서 이방법을 쓰려고하는데
주의해야할점이나 구체적인 방법이 궁금합니다.
제생각으론 내보내기 해서 만들어진 엑셀파일에 기존에 사이트에 있었던글이 양식 맞춰 있을꺼고
그양식대로 복사하고 붙여넣기해서 글을 늘려놓을 생각 이었는데요
내보내기해서 만들어진 엑셀파일을 열어보면 document_srl 칸, list_order칸, update_order칸
이세칸이 매 글마다 값이 바뀌더라구요 숫자 세자리가 들어가있는데 뭔가 바뀌는 공식?알고리즘? 이있는것같습니다
이값을 넣는 방식을 모르면 이렇게해서 SQL에 직접 한번에 글을 올리는건 불가능한건가요??
그럼 SQL상에서 글을 올리는 방법이 이거말고 어떤방법이있나요
내용은 다똑같아도되는데 활성화가 되어있던 사이트인거처럼 우선 게시판에 글이 많아보이게 하려고합니다
저 세칸을 비워놓고 SQL에 올리면 안올라가는것같더라구요 자동으로 잡아주면 좋을텐데 ㅜㅜ
워낙 컴퓨터 초짜라 뭐하나 하는데도 너무 오래걸리네요ㅜ
댓글 3
-
똑디
2014.08.12 18:09
-
모몽
2014.08.12 22:08
감사합니다 덕분에 많은 도움이됫습니다 엑셀에 지정하고 import를 시켯는데 이런에러메시지가 뜨네요 ㅜ
LOAD DATA LOCAL INFILE '/tmp/phpszLYMp' INTO TABLE `xe_documents` FIELDS TERMINATED BY ';' ENCLOSED BY '"' ESCAPED BY '\\t' LINESTERMINATED BY '\r\n'
#1083 - Field separator argument is not what is expected; check the manual
제가 어느부분을 잘못한걸까요?ㅜ
양식그대로 복사해붙이고 위에 세열만 값맞춰서 바꿔주엇는데 utf-8형식으로 저장도햇구요
저장할대 엑셀에서 저장할때 어떤형식으로 저장해야하는건가요?
뭐 엑셀에서 지원하지않는 기능이 포함되어잇다 그런경고문뜨길래 옵션에서 utf-8 선택된거확인하고 저장했는데 이부분이 뭔가 문제가 있엇을까요?
-
모몽
2014.08.12 22:12
아그리고 열구분자에 t를안쓰니 import 가 동작은하는데 등록되는 항목이 아무것도없네요 ㅜ
추가된항목이 없다고 뜨는것같아요
디비에 보시면 xe_sequence 라는 테이블이 있을겁니다.
이건 게시글이 작성이 되면 자동 증가 하게 됩니다.
엑셀로 데이터를 뽑아 보시면 대충 규칙을 아실겁니다.
documents_srl값을 증가하고 list_order와 update_order 값은 - 값이 붙혀져 있을겁니다.
주의할점은 xe_sequence 값을조회 한다음 제일 큰 수 보다 document_srl값이 커야 합니다. document_srl값이 정리되면 그 값에 - 를 붙혀서 list_order와 update_order 값을 넣어 주시면 되겠네요.
엑셀을 저장하실때는 tab기준으로 구분해서 저장을 하시구요.
저장하신 파일은 파일속성을 utf8로 변환해 주시면 됩니다.
그렇게 저장하신 파일은 import하실때 CSV using LOAD DATA 형식으로 하시고
열(컬럼)구분자는 \t 로 적어주시면 됩니다.
역슬래시 하시고 t
그렇게 하시면 별 문제 없지 저장이 되실것 같네요.