본문 바로가기

이것저것

(514)
Oracle 테이블 Index 삭제후 새로 생성하기. 오라클에서 작업하다보면 테이블 index 가 깨져서 데이터 추가/삭제가 안되는 경우가 가끔 발생한다. 주로 대용량 데이터를 입력하는 과정에서 그런 경우가 많았다. 그럴때는 index rebuild 가 안되서 일반적으로 테이블을 삭제했다가 새로 생성하고 데이터를 밀어넣는 불편한 방법을 사용하곤 했는데 sql developer 를 이용해서 깨진 index 를 삭제하고 새로 생성하는데 성공했다. (toad 로는 안되고 sql developer 로만 성공했다. 혹시 다른 툴로도 가능한지는 모르겠다.) 1. sql developer 를 실행한다. 2. 좌측의 database 목록에서 원하는 항목을 선택한다. 3. 테이블을 선택한다. 4. 가운데 테이블 정보화면이 출력된다. 5. 테이블 정보의 '인덱스' 탭을 선택..
Blocking, Non-Blocking, Synchronous, Asynchronous 많이 들었으면서도 자주 헷갈리는 개념들. 일단 결론부터 정리하자면, Blocking / Non-Blocking 방식은 Server 에서 Client 를 처리하는 Socket 동작 방식이고, 동기 / 비동기 방식은 프로세스를 처리하는 방식이다. * Blocking and Non-Blocking 방식. 1. Blocking 방식. - single thread 방식. server, client 작동 방식. request 를 받고 server 에서 처리 후 response 를 던져줄때까지 처리결과를 알 수 없었다. server 의 프로세스를 한번에 한개의 (자식)thread 가 사용한다는 의미. 임의의 A 메소드를 호출하는 뒤의 요청은 앞의 요청이 끝날때까지 기다려야 한다는 뜻. 이런 방식은 thread 의 b..
Thinkpad X1 Carbon 조도센서 키보드 백라이트. 2015년 4월형 x1 을 업무용으로 사용중이다. xx모직에 프로젝트 투입되었다 종료하고 나오면서 노트북을 포맷했는데 복구영역까지 모두 날리는 바람에 윈도우7을 설치했다. 얼마뒤 다시 윈도우10으로 업그레이드 했는데, 조도센서가 작동하지 않는지 어두워져도 키보드 백라이트가 자동으로 들어오지 않아서 'fn + space' 키로 켜줘야 했다. 집에서 사용중인 x1 은 어두워지면 자동으로 잘 들어오는데 이건 왜....? 찾아보니, 윈도우7 에서 업그레이드한 경우는 조도센서가 작동하지 않는다. (아직까진)해결방법도 없다. 그러고보니 집에서 사용중인 x1 은 윈도우8.1에서 10으로 업그레이드 한 경우라서 상관이 없었나 보다. https://support.lenovo.com/kr/ko/documents/ht103..
Oracle Sql Loader 를 이용해서 xml 포멧의 데이터 insert 하기. xml 포멧으로 된 데이터 파일을 oracle 테이블에 입력해달라는 요구사항이 들어왔다. sql developer 같은 툴에서는 불가하고 database server 에 원격으로 붙어서 작업한다. 1. oracle server 에 접속 후 작업 할 임의의 디렉토리를 생성한다. - C:\temp_data 2. 디렉토리 하위에 data 로 사용 할 xml 파일을 위치시킨다. - C:\temp_data\relation.xml 3. 디렉토리 하위에 control 파일을 위치시킨다. - sql loader 를 제어하는 파일. - C:\temp_data\relation.ctl 예) 파일내용. LOAD DATA INFILE 'C:\temp_data\relation.xml' INTO TABLE TBL_RELATION_..
Xcode 6 에서 깨끗한 프로젝트 생성하기. Xcode 5 까지는 프로젝트를 생성할때 Empty Application template 을 선택해서 스토리보드나 xib 파일이 없는 깨끗한 프로젝트를 생성. (내가 가장 선호하던 방법.) Xcode 6 부터는 Empty 하나만 남았는데 이걸로 프로젝트를 생성하면 정말 아무것도 없는 프로젝트가 생성된다. 이렇게 하지 말고, 1. Single View Application 프로젝트를 선택후 생성. 2. Main.storyboard, launchscreen.xib 파일 삭제. 3. SupportingFiles > Info.plist 파일을 열어서 - Main storyboard file base name 에서 Main 스토리보드 이름 제거. - Launch screen interface file base n..
IntelliJ IDEA 에서 SerialVersionUID 자동생성하기. 이클립스에서 implements Serializable 선언하고 클래스명 위에 마우스 커서를 갖다대면 SerialVersionUID 를 자동생성하는 메뉴가 뜬다.만약 Intellij IDEA 에서 똑같은 기능을 사용하려면 Preference 에서 Inspection > Serialization issues 를 선택한 뒤 Serializable class without 'serialVersinoUID' 옵션을 선택한다.
휴대전화번호 인증 기능 블로그에 거의 신경을 쓰지 못하고 있는데 방문객은 꾸준하다.유익한 내용을 많이 올려야 하는데 이것 참.. -_- 혼자 사용하려고 만든 서비스인데 혹시 필요하신분이 계실까해서 페이스북에 올렸던 내용인데 블로그 방문객 중에서도 필요하신 분이 계실까해서 올림. ------------------------------------------------------------------------------------------------------------------------------------ 웹, 모바일 서비스에서 회원가입할때 많이 사용하는 "휴대전화번호 인증" 기능입니다. 실명인증은 지원하지 않고 사용자가 입력한 휴대전화번호가 유효한 번호인지만 확인합니다. 1. 사용자가 휴대전화번호를 입력하고 인증번호를 ..
Python 버전 선택. 원문 : https://wiki.python.org/moin/Python2orPython3 저도 처음에 고민했습니다. 풍부한 라브러리를 선택할 것이냐, 아니면 최신 트랜드를 따를 것이냐.아래의 글을 참고해서 자신에게 적절한 것을 판단하시길. Python 2나 3은 개발에 필수적입니다. 차이점 요약: Python 2.x 버전은 구시대의 유물이며, Python 3.x 버전이 현재와 미래의 언어라고 할 수 있습니다. 2.x 시리즈의 마지막 버전인 2.7 버전은 2010년 중반에 “수명이 만료된 릴리즈”라는 표현과 더불어 출시되었습니다. 2.x 버전은 그 이후로 더 이상 주 상품으로 출시되지 않았습니다(branch: 곁가지 같은 버전들은 출시되었을 수 있음). 그 이후로 3.x 버전은 막후에서 개발 중이며, 2..