전체 글 140

파일포맷 - XML과 JSON에 대하여 알아보자.

이전에, 블로그에 XMLHttpRequest 객체에 대하여 작성한 적이 있었습니다. XML 파일을 이용하여 데이터를 받았습니다. XML만큼 전송에서 많이 쓰는 JSON 파일도 있습니다. 두 가지 문법과 방식에 차이에 대하여 알아보도록 하겠습니다. XML (eXtensible Markup Language) Kim Narae Lee/firstName> Ujin Kim Daewu XML은 데이터를 저장하고 전달하기 위해 만들어졌으며 저장되는 데이터의 구조를 표현하기 위한 언어입니다. HTML의 문법과 매우 비슷한 마크업 언어입니다. HTML과 차이점은 XML태그는 HTML태그와 같이 미리 정의 되어있지 않으며 사용자가 직접 정의할 수 있습니다. 이것은 좋은 확장성을 보입니다. 데이터를 보여주는 목적이 아닌 데..

MySQL (10) - Transaction(트랜잭션)에 대하여 알아보자

DB 서버를 운영하다 보면 종종 데이터를 잘못 입력하여 서버가 꼬이는 경우가 있습니다. DB에는 트랜잭션이라는 개념이 있습니다. 트랜잭션을 제어하는 경우 어느 정도 해당 문제를 해결할 수 있습니다. 트랜잭션이란? 트랜잭션(Transaction)은 DB의 상태를 변환시키는 작업 단위 혹은 한 번에 모두 수행하여야 하는 연산들의 모음을 말합니다. 한마디로 쪼갤 수 없는 작업의 최소 단위를 말합니다. SQL에 자주 사용하는 4가지의 쿼리문이 있습니다. (SELECT, INSERT, UPDATE, DELETE) 위의 쿼리중 1가지만 사용하는 경우도 작업의 단위가 될 수 있습니다. 하지만 이것에 벗어나 예를 들어 게시글을 작성하고, 업로드하며, 마지막으로 다시 게시판에 조회하는 경우 이것을 묶어 작업하는 것도 단..

컴퓨터/MySQL 2023.03.23

JavaScript (5) - 서버 시간을 가져오자 (XMLHttpRequest)

수강 신청을 할 때 타임시커등 다양한 프로그램을 이용하여 서버 시간을 가져옵니다. 수강 신청 때 시간 편차에 예민하기 때문에 서버 시간을 알아 오는 것이 중요합니다. 자바스크립트를 이용하여 간단하게 서버 시간을 가져올 수 있습니다. XMLHttpRequest XMLHttpRequest 객체는 서버로부터 XML 데이터를 가져오는 데 사용합니다. 해당 객체를 이용하여 웹 페이지 로딩이 완료된 후에도 서버에 데이터를 요청하거나 서버로부터 데이터를 전송받을 수 있습니다. 여기서 XML은 extensible markup language의 약자로 HTML과 같은 마크업 언어입니다. HTML과 다른 점은 XML은 데이터를 저장하고 전송하는 목적으로 만들어져 있고, 사용자가 직접 정의할 수 있는 특징을 가지고 있습니다..

MySQL (9) - 내장함수를 이용하여 글자를 다뤄보자

예전에 select절을 이용하여 데이터를 불뤄 오는 방법을 다뤘습니다. 데이터를 그대로 가지고 오는 것이 아니고 가공해서 가져오는 것도 필요하다는 것을 알았습니다. where절을 이용하여 데이터의 일부를 가져오는 방법 등을 더 범위 있는 사용을 위해 이번에는 해당 함수들을 설명하려고 합니다 ※ 함수 설명을 중심으로 내용을 진행합니다. ※ 제가 자주 사용한 함수는 ★로 표시하였습니다. 문자열 함수정리 LIKE (★★★) -- sam문자가 포함된 값을 모두 조회한다. SELECT * FROM mytable WHERE comp LIKE '%sam%'; -- sam문자로 시작하는 값을 모두 조회한다. SELECT * FROM mytable WHERE comp LIKE 'sam%'; -- 삼으로 시작하는 3글자를..

컴퓨터/MySQL 2023.03.16

MySQL (8) - 기본키를 여러 개 두어야 할 때 (복합키)

기본키(Primary Key)는 여러 개 사용할 수 없습니다. 하지만 기본키를 여러 개가 필요 경우가 있습니다. 예를 들어 "매년도에 전체 학생의 행사 참여에 관한 테이블을 만들 때" 학생과 년도의 정보를 묶어서 사용해야 합니다. 어떻게 해야 하는가? 우선 기본키는 주민등록번호와 같이 테이블의 각 행을 고유하게 식별하는 역할을 합니다. 해당 역할을 수행하기 위해 NULL 값을 가져서는 안 되며 각 열을 구분할 수 있어야 합니다. 또한 기본키는 더불어 최소성을 가져 각 테이블에 한 개만 둘 수 있습니다. CREATE TABLE TEMPDB ( student_numVARCHAR(12) PRIMARY KEY, yearINT PRIMARY KEY, activityVARCHAR(100), noteVARCHAR(1..

컴퓨터/MySQL 2023.03.11

컴퓨터 고치기 - 모니터 해상도가 640x480으로 고정될 때 해결

최근에 컴퓨터에 듀얼모니터 기능을 사용하는 중 한 가지 오류를 발견하였습니다. 이번에는 해당 문제를 해결해보도록 하겠습니다. 대상 노트북 노트북 - 서피스프로 X (2019) - ARM 기반의 CPU를 탑재하고 있는 노트북입니다. OS - 윈도우11 제가 활용했던 솔루션은 다음과 같습니다. 포트를 바꾸어 본다 (C to HDMI) 다른 선으로 바꾼다 dxdiag에서 오류를 확인해본다. 그래픽 드라이버를 제거 후 다시 설치한다 노트북의 전원 부분을 다시 확인한다 - 해결 대부분 원인은 1번, 2번의 오류가 대부분입니다. 전자제품이다 보니 아예 안되는 경우 전원을 완벽히 차단하고 하는 것도 하나의 솔루션이 될 수 있다는 것을 알았습니다. 소프트웨어적으로 할 수 있는 3번의 방법과 4번의 방법을 소개하겠습니다..

MySQL (7) - JOIN에 대하여 알아보자

SQL 탐색에서 여러가지 테이블을 연동하여 사용하는 경우가 많습니다. 이때 사용하는 방법이 JOIN입니다. 이번에는 해당 방법에 대하여 알아보겠습니다. 한 번에 알아보는 JOIN의 종류 간단하게 집합 사진과 쿼리문을 정리하였습니다. 시간이 없으신 분들은 해당 부분의 쿼리문만 보셔도 됩니다. 벤다이어그램 소스 코드 SELECT * FROM A a INNER JOIN B b ON a.KEY = b.KEY; SELECT * FROM A a LEFT OUTER JOIN B b ON a.KEY = b.KEY; SELECT * FROM A a LEFT OUTER JOIN B b ON a.KEY = b.KEY WHERE b.KEY IS NULL; SELECT * FROM A a RIGHT OUTER JOIN B b ..

컴퓨터/MySQL 2023.03.02

Python (14) - Tic-Tac-Toe게임을 만들어보자 (pygame)

파이썬에는 pygame이라는 멀티미디어 표현을 위한 라이브러리가 있습니다. 해당 라이브러리를 통해 다양한 게임들을 제작할 수 있습니다. 해당 라이브러리 소개를 위한 첫 프로젝트로 간단하게 제작이 가능한 틱택토를 구현해보았습니다. 완성된 소스 코드가 필요하신 분은 아래 링크 클릭하여 소스 코드로 바로 이동하면 됩니다. 소스 코드 Tic-Tac-Toe (틱택토) 틱택토는 서양 놀이 중 하나로 3x3 보드에서 가로, 세로, 대각선 중 한 줄을 만들면 승리하는 게임입니다. 간단하게 삼목입니다. 플레이 방법은 다음과 같습니다. 가로 두 줄 세로 두 줄을 그립니다. 1P와 2P는 3x3 공간 안에 각각 O, X를 번갈아 가면서 그립니다. 가로, 세로, 대각선 중 한 줄이 완성되는 경우 만든 사람이 승리합니다. 게임..

컴퓨터/Python 2023.02.14

일상 - 2022 윤하 콘서트 (C/2022YH) 후기 (대구)

날짜일정23.02.11(토)C/2022YH (대구 EXCO) 초등학생 시절 비밀번호 486으로 알았던 한 명의 가수를 알았습니다. 군시절 동기가 26(이륙)이라는 노래를 들려줬고 이 노래가 감명되어 팬이 되었습니다. 2022년이 되고 정규 6집 리패키지 앨범을 내고 사건의 지평선이 역주행하는 것을 보며 정점에 오른 윤하의 모습을 꼭 보고 싶다고 생각하여 콘서트를 가게 되었습니다.그 와중에 높았던 티켓팅 난이도는 덤......여담으로 C/2022YH는 YH가 2022년에 발견한 혜성이라고 합니다.  콘서트장까지 가는 길그리하여 서울 사람은 형과 함께 대구로 가는 버스에 몸을 실었습니다. 고속버스 이동으로 약 3시간 정도 소요되었습니다. 도착하고 밥을 먹으러 동성로로 갔는데... (아쉽게도 정신이 없어서 못..

일상 2023.02.13

Python (13) - 파이썬으로 QR코드를 만들어보자 (qrcode)

QR코드는 정보를 오프라인으로 담을 수 있는 한 가지 방법입니다. 해당 방법을 이용하여 더 쉽고 빠르게 정보를 공유할 수 있습니다. 파이썬에서도 QR코드를 생성할 수 있는 모듈이 있는데 이번에는 해당 모듈에 대해 알아보겠습니다. QR코드는 무엇인가? QR코드는 Quick Responce의 약자로 1994년 일본 'Denso Wave'에서 개발되었습니다. 2차원으로 데이터를 나열한 정보표시 방법으로 흰색 바탕에 검정색 점으로 구성되어 있습니다. 해당 기술을 응용하여 URL, 텍스트 등 데이터를 담거나, 회용으로 제공하는 링크를 이용하여 결제기능을 구현할 수 있습니다. QR코드는 QR코드 리더 및 스캐너를 통해 읽을 수 있습니다. QR코드의 특징 어떤 방향에서 측정해도 인식할 수 있다. 문자 기준 4096자..

컴퓨터/Python 2023.02.09