일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- docker
- Oracle
- linux
- Spring
- springboot
- AWS
- IntelliJ
- jenkins
- JPA
- ReactJS
- 맛집
- 요리
- Design Patterns
- javascript
- jsp
- tool
- laravel
- db
- Web Server
- it
- php
- ubuntu
- java
- devops
- elasticsearch
- MySQL
- Gradle
- Git
- Spring Boot
- redis
- Today
- Total
목록MySQL (23)
아무거나
JSON (Json을 지원하는 데이터 타입은 MySQL 5.7.8부터 사용이 가능하다. 해당 포스팅은 VARCHAR에 데이터는 JSON STRING형태의 예제이다. 즉, JSON 데이터 타입 고려안하고 작업) 조회 필드 속성이 VARCHAR에 데이터는 JSON형태 일 때 조회 방법 [필드 속성] `vendor_category_info` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL; [조회 쿼리] SELECT vendor_category_info , JSON_UNQUOTE( JSON_EXTRACT(vendor_category_info, '$.depth1') ) AS VENDOR_DEPTH1 , JSON_UNQUOTE( JSON_EXTRACT(vendor_categ..
Mysql에서 DB에 Multi Values를 통하여 여러 row를 한 번에 insert 하는 방식을 사용하였다. (Mysql에서는 Bulk Insert라고도 불린다) * Bulk Insert : 3개의 row가 기본적으로 하나의 transaction에서 처리가 된다. 즉, 3개 중 하나라도 필수값을 지키지 않는다거나 하는 경우 모두 rollback이 됨을 의미한다. 그러나 애플리케이션에서 다량의 Values를 생성하여 DB로 질의를 전달할때 DB측에서 받아들일 수 있는 Packet 제한이 있어에러가 발생한다. [error example]### Cause: com.mysql.jdbc.PacketTooBigException: Packet for query is too large (30321018 > 167..
작업을 하는 도중에 카테고리 코드를 조회하는 쿼리가 있었다. 성능 이슈로 인하여 해당 코드의 collation은 latin이였고 관리자 시스템쪽에는 전체필터를 주었을때 해당 코드컬럼에 대한 필터도 거치므로 한글조회를 할 시 오류가 검출되었다. 그래서 쿼리에서 직접 convert하여 조회하는 부분으로 수정하였다. [ex] As-is OR master_code = #{param.allSearch} To-be OR master_code = CONVERT(#{param.allSearch} USING utf8) 위와 같이 Converting하여 조회를 하면 된다.