본문 바로가기

DB6

[Oracle] Ubuntu 20.04에 Oracle 11g 설치하기 환경 Ubuntu 20.04 Oracle 11g (for Linux x64) 설치 과정 1. Ubuntu 64bit 인지 확인 Oracle XE를 설치하기 위해서는 서버 운영체제가 64bit 운영체제야 한다. Ubuntu에서 현재 시스템이 64bit인지를 확인하는 명령어는 아래와 같다. uname -i 2. Orcale 11g XE 다운로드 Oracle XE는 오픈소스가 아니기 때문에 오픈소스 패키지를 관리하는 저장소에서 패키지 관리툴로 설치할 수 없다. 자신의 로컬에 다운로드 받아서 그 파일을 우분투 서버에 업로드하는 방식으로 진행해야 한다. 아래 홈페이지로 들어가서 PC에 다운로드한다. https://www.oracle.com/database/technologies/xe-prior-release-do.. 2024. 4. 23.
[MSSQL] OFFSET - FETCH 이용하여 페이징 처리 MSSQL 2012 이전 (11.X 미만) 예전의 MSSQL (2012 이전)에서는 페이징 쿼리를 하기 위해서는 보통 ROW_NUMBER() 를 사용하여 정렬순으로 번호를 부여한 다음에 중첩쿼리로 복잡하게 가져오는 방법을 사용했다고 한다. 이 복잡한 방법말고 좀 더 간단한 쿼리를 알아보자. MSSQL 2012 이후 (11.X 이상) # 양식 ORDER BY {정렬 대상 컬럼} OFFSET {건너 뛸 행의 수} ROWS FETCH NEXT {가져올 행의 수} ROWS ONLY ORDER BY를 통해 정렬 기준을 정한 뒤 OFFSET을 통해 건너 뛸 행의 수를 먼저 설정하고 (1부터 가져올 경우 OFFSET 0 ROWS, 11부터 가져올 경우 OFFSET 10 ROWS) FETCH NEXT 에서 몇 개의 행.. 2022. 3. 16.
[MSSQL] @@IDENTITY (자동증가값) PK값 IDX값 반환 MySQL과 마찬가지로 MSSQL(Sql Server)에도 insert 후 바로 PK값을 select 하는 방법이 존재한다. MySQL은 이 포스팅 참고하면 된다. 2021.11.15 - [DB/MySQL] - [MySQL] LAST_INSERT_ID() 오늘 알아보려고 하는 MSSQL은 아래 코드이다. 버전마다 조금씩 다르니, 자신의 버전을 꼭 확인하길 바란다. SELECT @@IDENTITY SELECT @@IDENTITY는 마지막으로 삽입된 ID 값을 반환하는 시스템 함수를 뜻한다. 영향받은 것이 없거나 자동증가 값이 없다면, NULL을 반환한다. 실제 예 INSERT INTO RESULT ( LOCALE , TYPE , TITLE , CONTENTS , SHOW_YN , START_DAY , EN.. 2022. 3. 16.
[MSSQL] 날짜 포맷 변경하기 상황 mybatis를 이용하여 select 문에서 원하는 형식으로 날짜를 가져와야 했다. 근데 log를 찍어보니, 다른 데이터들은 잘 가져오는데 날짜부분만 계속 null값이 떴다. 알아보니, alias를 지정해주지 않아서 생긴 문제였다. 일단 MSSQL에서 사용하는 날짜 포맷 변경방법 부터 알아보자. (Mysql, Oracle과는 문법이 많이 다르다) 1. 날짜 포맷 변경하기 (두가지 방법 중 골라쓰면 됨) 1) CONVERT 함수 사용하기 CONVERT(VARCHAR(10), GETDATE(), 23) // YYYY-MM-DD 이런 형식으로 변환 다른 형식으로 변환을 해야된다면 아래 링크를 참고하자. https://blog.naver.com/anne9/221975613943 2) FORMAT 함수 사용.. 2022. 3. 15.
[MySQL, MariaDB] csv 파일을 DB 테이블로 Import 엑셀로 정리된 파일을 mariadb(mysql)에 한번에 insert 하기위한 방법을 정리해보려고 한다. 간단하게 순서를 적어보자면, 1. 엑셀파일의 데이터 정리 - insert 될 데이터만 남기고 열 이름은 삭제한다. 2. 엑셀파일을 CSV 파일로 저장 - 엑셀파일에서 다른이름저장(다른형식)을 클릭한 후 확장자를 CSV로 선택하여 저장한다. ex) test_insert.csv 3. mariadb에 접속한다. (이 글에서는 DBeaver DBMS를 사용함) 4. 한글 깨짐을 해결하기 위해 위에서 저장한 CSV파일을 메모장으로 연다. - 메모장으로 연 후, 다른이름으로 저장을 눌러 인코딩을 UTF-8로 맞춰준다. (아래 사진 참고) 5. DBeaver에 다음 명령어를 입력한다. - 단, 테이블의 필드와 c.. 2022. 1. 24.
[MySQL] LAST_INSERT_ID() LAST_INSERT_ID() last_insert_id 함수는 테이블의 마지막 auto_increment 값을 리턴한다. 이걸 사용하면 insert한 뒤에, 자동 증가된 pk값을 가져오는 쿼리를 한번 더 날려줄 필요없다. mybatis 사용 예시 /* PopupMapper.insertRegDataList */ INSERT INTO POPUP ( TYPE , TITLE , CONTENTS , RELATION_URL , RELATION_URL_TYPE , START_DAY , END_DAY , REG_DT , SHOW_YN , ORDER_NO ) VALUES ( #{type} , #{title} , #{contents} , #{relationUrl} , #{relationUrlType} , #{startD.. 2021. 11. 15.