전체 글 139

청와대, 국민 품으로 - 청와대 방문후기

동아리 후배가 청와대를 가고 싶다고 하여 가게 되었습니다. 비록 사진을 많이 찍지 못했지만 갔다 온 후기를 적어보려고 합니다.요약장소 : 청와대 (서울특별시 종로구 청와대로 1)방문일시 : 2024. 6. 15관람 예약 등 정보청와대 관람 후기 관람 예약 등 정보청와대에 방문하려면 사전에 관람 예약을 해야 합니다. 관람 예약을 하는 방법은 아래에, 링크에 접속하여 관람 예약을 하면 됩니다. 청와대 관람예약 링크 관람 예약 * 만 65세 이상 어르신, 국가보훈대상자, 외국인 본인만 신청 가능 * 장애인은 동반 1인 추가 신청 가능 * 신분증 등 증빙 서류가 반드시 필요함www.opencheongwadae.kr 예약은 선착순으로 진행되며 전날까지 인원 변경을 할 수 있습니다. 처음에는 예약이 많이 어려웠다고..

Python (24) - 파이썬으로 MySQL 다루기 (PyMySQL)

우리가 다양한 프로젝트를 할 때 처음에는 엑셀 파일 및 CSV 파일등으로 데이터를 다룹니다. 하지만 프로젝트의 규모가 커지면 자연스럽게 DB를 사용합니다. 이번에는 pymysql을 이용하여 파이썬과 MySQL을 연결하여 활용한 방법을 알아보도록 하겠습니다. 파이썬과 MySQL 연동파이썬과 MySQL의 연동하는 것은 DB 관리 및 분석에 있어 중요한 도구입니다. 파이썬은 MySQL은 활용하기 위해  mysql-connector-python, PyMySQL, SQLAlchemy와 같은 다양한 라이브러리를 제공합니다. 이를 이용하여 DB에 저장된 데이터를 쉽게 다룰 수 있습니다. 두 프로그램의 연동을 통해 웹 애플리케이션 개발, 데이터 분석, 자동화 스크립트 작성 등 다양한 프로젝트에서 시너지를 낼 수 있습니..

컴퓨터/Python 2024.06.08

Mybatis - INSERT SELECT에서 ORA-00933 에러

회사에서 업무를 하던 중 쿼리를 만들다 다소 신기한 방식으로 해결하였습니다.insert에서 update로 변경하는 것만으로 에러가 해결되어 공유하려고 합니다. 한줄요약 : INSERT SELECT 구문에서 실행이 안 되는 경우 태그를 insert에서 update로 바꾸어보자 ORA-00933ORA-00933: SQL 명령어가 올바르게 종료되지 않았습니다해당 오류는 SQL 구문 작성 오류 시 문법 오류로 인한 것입니다. 오라클에서 필요한 명령어 쉼표, AND 등 명령어가 빠져 있거나 오타가 난 경우 발생할 수 있습니다. Mybatis에서 발견한 오류IDE에서 쿼리로 작성 할 때 실행시 문제가 없었으나 Mybatis에서 쿼리를 동일한 쿼리를 실행할 때  ORA-00933에러가 계속 발생하였습니다. 아래와 같..

컴퓨터/기타 2024.05.29

일상 - 이어폰을 바꾸다 (아이리버 ITW-G9 리뷰)

구매 계기이전에 버즈 프로 한 짝을 광역버스에서 잃어버렸습니다. 잠을 자다가 일어났는데 사라졌습니다 ㅠㅠ. 한쪽은 통신이 제대로 안 되고 다른 한쪽도 잃어버려 복구하는데 배보다 배꼽이 크다고 생각하여 구매하게 되었습니다. 제가 이어폰 구매에 선택한 기준은 다음과 같습니다.잘 안 빠지는 이어폰일 것 (★)아는 브랜드 제품일 것땀이 나도 사용할 수 있는 제품일 것나쁘지 않는 통화품질다음 기준을 가지고 제품을 찾는 중 잘 안 빠지는 이어폰을 주요 기준으로 해당 제품을 구매하게 되었습니다.  쿠팡 기준 구매 링크는 아래와 같습니다.https://www.coupang.com/vp/products/6743275330?vendorItemId=83055984378&sourceType=MyCoupang_my_orders..

일상 2024.05.22

WAS - 아파치(Apache)와 톰캣(Apache Tomcat)

이전에 게시글을 올리면서 WAS라는 개념이 전혀 없을 때 사수가 물어봤던 질문 한가지가 생각났었습니다. 아파치와 아파치 톰캣이 같나요? 당시 저는 두 개의 프로그램이 같다고 생각하였습니다. 저와 같이 고민하는 초보 개발자분들을 위해 두 가지 개념을 정리해 보려고 합니다. 결론부터 말하면 아파치와 아파치 톰캣은 다릅니다. WEB Server와 WAS두 개가 다른 것을 먼저 설명하기 전에 가장 먼저 알아야 하는 개념이 WEB Server와 WAS(Web Application Server)입니다.Web Server는 정적인 콘텐츠를 제공하고(정적 페이지), WAS는 동적인 데이터를 생성하고 실행하는 역할을 담당합니다. (동적 페이지) 일반적으로 Web Server와 WAS는 같이 사용하여 웹 애플리케이션을 제..

컴퓨터/기타 2024.04.20

Python (23) - 오라클과 연동하여 Blob이미지를 다운로드 해보자 (oracledb)

직장에서 파이썬 이미지를 다운로드하는 일이 있었습니다. Toad 프로그램을 사용하는 방법도 있으나 직접 사용하기에 너무 비싸기 때문에 파이썬과 오라클을 연동하여 이미지를 설치하게 되었습니다. 바로가기 oracledb 모듈 다운로드(oracledb) 프로그램 기능 및 운영 순서 소스코드 oracledb Oracle DB와 상호 작용하기 위해 파이썬에서 사용하는 oracledb 모듈은 오라클과 효율적인 DB 통신을 담당합니다. 해당 모듈을 이용하여 DB에 연결하고 쿼리를 실행하며 결과를 처리하는 기능을 제고합니다. oracledb 모듈은 오라클 클라이언트 라이브러리를 이용하여 작동하므로 설치 및 설정이 필요합니다. 이를 통해 Python 애플리케이션은 Oracle 데이터베이스와 상호 작용하여 데이터를 검색,..

컴퓨터/Python 2024.03.26

Oracle (6) - ORA-01427 : 단일 행 하위 질의에 2개 이상의 행이 리턴되었습니다

오라클을 사용하다 보면 아래와 같은 오류를 종종 보게 됩니다. ORA-01427 : 단일 행 하위 질의에 2개 이상의 행이 리턴되었습니다 해당 오류는 주로 서브쿼리에서 1건을 초과한 레코드가 나올때 발생하는 에러입니다. 예시 데이터 STUDENT_NO (PK) NAME DEPT_NO 20240304 강감찬 100 20240305 이순신 100 20240306 이산 200 20240307 홍길동 300 문제가 있는 쿼리문을 만들어 보겠습니다. SELECT STUDENT_NO, DEPT_NO FROM EXAMPLE_TABLE T1 WHERE STUDENT_NO = ( SELECT STUDENT_NO FROM EXAMPLE_TABLE T2 WHERE DEPT_NO = 100 ) 해당 쿼리에는 문제가 있습니다...

컴퓨터/Oracle 2024.03.07

MySQL (18) - 트리거(Trigger)를 만들어보자

DB에서 데이터가 변경될 때 추가적인 작업이 필요한 경우가 있습니다. 이 작업은 일반적으로 클라이언트-서버 구조에서는 서버 측에서 처리될 수도 있지만, DB 내부에서도 이를 처리할 수 있습니다. 이를 위해 트리거를 활용하는 방법을 알아보려고 합니다. Trigger (트리거) 트리거는 방아쇠라는 뜻을 가지고 있습니다. 방아쇠를 당기면 총알이 나가는 것처럼 데이터가 바뀌면 DB에 특정한 쿼리를 자동으로 실행할 수 있습니다. 어떤 테이블에서 이벤트가 발생했을 때, 추가로 필요한 쿼리 작업들을 자동으로 수행할 수 있게 트리거를 설정합니다. Trigger 생성 방법 CREATE TRIGGER ex_trigger {BEFORE | AFTER} {INSERT | UPDATE | DELETE} ON my_table F..

컴퓨터/MySQL 2024.03.07

Morse Code - 모스 부호에 대하여 알아보자

시작하기 전 HTML 삽입 미리보기할 수 없는 소스 최근에 지인이 아마추어 무선기사라는 자격증을 땄습니다. 자격증을 찾아보던 중 모스 부호에 대해 흥미가 생겼습니다. 이전에 제가 해당 게시글을 작성할 때 꼭 광고를 첨부해야겠다고 생각했습니다. 영상은 어릴 때 인상깊게 본 K5 런칭 광고입니다. Morse Code Morse Code는 새뮤얼 핀리 브리즈 모스(Samuel Finley Breese Morse)가 고안하여 만든 전신 기호로, 짧은 발신 전류와 긴 발신 전류로 전신부호를 구성한 뒤 전신기를 통하여 전송하는 방식을 가집니다. 짧은 발신 전류를 점( · ), 긴 발신 전류를( ― )로 구분하여 표기합니다. 한국에서는 돈( · ), 쓰( ― )로 부르는데 일본의 영향을 받았습니다. 현재는 아마추어 ..

MyBatis - MyBatis에서 부등호를 처리하자

현재 직장에서 쿼리를 다룰 일이 많습니다. 한국에서 일하다 보니 백엔드로 전자정부 프레임워크를 이용하고 있으며 이는 MyBatis를 통해 쿼리문을 만드는 방식을 사용하고 있습니다. MyBatis는 XML을 이용하기 때문에 부등호 입력 시 문법상의 오류가 날 수 있습니다. 간단하게 정리를 해보려고 합니다. 오류코드 (예시 코드) SELECT EMP_NO FROM REGISTER WHERE JOIN_SEQ > 1000 위에서 말한 것과 같이 XML을 사용하는 방식입니다. 그렇기 때문에 부등호로 사용하는 연산자 기호는 MyBatis에서 태그로 사용됩니다. 그렇기 때문에 다음과 같은 방법을 이용합니다. 1. CDATA를 이용하기 SELECT EMP_NO FROM REGISTER WHERE JOIN_SEQ ]]>..

컴퓨터/기타 2024.02.10