JaeWon's Devlog
article thumbnail
[DB] Transaction(트랜잭션) 정리하기
BackEnd/DataBase 2022. 5. 7. 15:21

1. Transaction(트랜잭션)이란? - 데이터베이스의 상태를 변환시키는 하나의 논리적 기능을 수행하기 위한 작업의 단위 - 데이터베이스의 작업 중 한꺼번에 모두 수행되어야 할 일련의 연산들을 의미 - 예를들어, 게시판으로 생각해자면 다음과 같다. 게시판 목록을 확인한다. 사용자는 새로운 게시글을 작성하고, 저장 버튼을 누른다. 게시판 목록에서 작성자가 작성한 글이 포함된 목록을 확인한다. - 이러한 과정들이 모두 합쳐서 "게시판 작성" 이라는 하나의 작업 단위를 구성한다. 2. 트랜잭션의 정의 - 트랜잭션은 데이터베이스 시스템에서 병행 제어 및 회복 작업 시 처리되는 작업의 논리적 단위 - 사용자가 시스템에 대한 서비스 요구 시 시스템이 응답하기 위한 상태 변환 과정의 작업 단위 - 하나의 트랜잭..

article thumbnail
[DB] Oracle vs MySQL vs MSSQL 비교
BackEnd/DataBase 2022. 4. 20. 16:09

최근에 면접을 보게 되면서 아래와 같은 질문을 받게 되었다. "업무를 진행하면서 여러 DB를 사용해보셨을 텐데, Oracle, MySQL, MSSQL의 차이점을 말씀해주실 수 있으실까요?" 해당 질문을 받고 머리가 하얘졌다. 간단하게는 비용적으로 차이가 있고, MSSQL은 보통 윈도우에서 사용된다는 정도만 생각하고 있었다. 이번 글에서는 자세히는 아니고, 내가 생각하는 위 DB 들을 비교하여 정리해보고자 한다. 1. Oracle, MySQL, MSSQL Oracle - Oracle DB는 미국 오라클(Oracle)사의 관계형 데이터베이스 관리 시스템(RDBMS)의 이름이다. - 현재 유닉스/리눅스 환경에서 가장 널리 사용되는 RDBMS이다. - 검색이나 업데이트용 언어로는 국제표준화기구의 표준 구조화 조..

article thumbnail
[MySql] 데이터 정렬하기(한글 ->영문 순서)
BackEnd/DataBase 2021. 8. 28. 15:08

MySQL에서 데이터 정렬시 한글(자음) -> 영어(알파벳) 순으로 정렬이 필요했다. 1. 데이터 정렬 안한 데이터 상태 정렬 데이터 상태(한글(자음) -> 영어(알파벳)) 2. 쿼리 테이블에는 한글, 영어만 있다고 가정된다.(특수문자, 숫자 X) 정렬하고자 하는 컬럼(tag_name)의 첫 글자를 구하여, ASCII 코드 값을 구한다. ASCII 코드에서 영어는 65~122 이므로, 1번에서 구한 값 ASCII 코드 값이 123보다 작으면 영어로 판단. 영어 일시 순서를 2번째로 하고, 그 이외에는 첫번째(한글)로 한다. SELECT * FROM tag_info ORDER BY ( CASE WHEN ASCII(SUBSTRING(tag_name,1)) < 123 THEN 2 ELSE 1 END ), ta..