mariadb3 JPA @Lob 이해하기 (with MariaDB) LOB 이란? - Large Object의 줄임말로서, 대형 객체 데이터를 저장하기 위한 가변 길이 데이터 유형이다. - BLOB, CLOB 2가지 종류가 있다. * BLOB(Binary Large Object) = 이미지, 오디오, 비디오 같은 이진 데이터를 저장한다. * CLOB = 대량의 텍스트 데이터를 저장한다. 어떻게 사용할까? 이미지, 오디오, 비디오 같은 데이터를 바이너리 형식으로 저장하거나, 대량의 텍스트 값을 저장할 때 사용하면 된다. 엔티티 객체 필드 위에 @Lob이라는 어노테이션을 달면 스프링이 추론하여 어떤 타입으로 저장할지 자동으로 판단한다. 따라서, (1) 데이터베이스에 정의한 컬럼 타입과 (2) 엔티티에 설정하는 타입을 반드시 일치시켜야 한다. (1) 데이터베이스 컬럼 타입 M.. 2024. 1. 6. 필드 1부터 N까지 자동으로 채우기 (+ 랭킹) 특정 필드에 Auto Increment 없이 1부터 N까지 순서대로 값을 채워야 하는 경우가 있다. 그런 경우, 간단하게 해당 Update 문으로 해결이 가능하다. UPDATE T JOIN (SELECT @rank := 0) r SET Number=@rank:=@rank+1; 해당 테이블이 있을 때, seq 필드를 업데이트하기 위해서는 다음과 같이 사용한다. UPDATE tb_rank JOIN (SELECT @rank := 0) r SET seq=@rank:=@rank+1; 쿼리를 실행하면 1부터~N까지 값이 채워지는 것을 확인 할 수 있다. 2023. 12. 10. Spring Boot 3 + JPA를 활용한 Liquibase 실습하기 (1) 📖 실습 내용 1. Spring Boot 3 + Spring Data JPA 환경에서 Liquibase 환경을 설정한다. 2. Entity 파일을 생성한 뒤, 로컬 DB와 스키마 차이에 대한 ChangeLog 파일을 생성한다. (diff) 3. Liquibase를 통해 ChangeLog 파일을 기반으로 데이터베이스에 적용하고 로그를 확인한다. 4. profile 설정을 통해 개발 환경별로 적용한다. 📖 실습 1. Liquibase 환경 설정하기 기본 실습 환경은 다음과 같다. 1. Spring Boot 3.0.6 2. Maven 3.8.4 3. Java 17 4. MariaDB 10.6 1. Liquibase Dependency 추가 Liquibase를 사용하기 위해서 liquibase-core 의존성을.. 2023. 5. 14. 이전 1 다음