목록분류 전체보기 (104)
시스템아 미안해
혹시 LAST_INSERT_ID() 쓰려는데 망설이시는 분들은 이 글 읽어보세요! A와 B가 다른 connection을 가지고 동시에 INSERT 후 LAST_INSERT_ID()값을 SELECT하더라도 자신이 INSERT한 ID값을 반환받게 된다. 예를 들면, A가 INSERT를 하고 LAST_INSERT_ID()를 SELECT하려고 하는 순간 B가 먼저 INSERT를 하였다. 이 경우 A가 SELECT하여 얻어지는 ID값은 B와는 무관하게 A가 INSERT한 ID값이 된다. 물론, 전제 조건은 A와 B가 다른 connection을 사용한다는 것이지만, 동시에 INSERT하고 접근하는 문제가 있어도 유용하게 사용할 수 있다. (하지만 저는 mybatis의 useGeneratedKeys를 사용했습니다.ㅎ..
코드를 수정했는데 다시 에러가 뜬다. 그러면 콘솔을 잘 보세요 여러분!! 수정 전 코드가 남아있을수도 있습니다!!!!!!!!!!!!!!!!!!! 해당 프로젝트에서의 .metadata > .plugins > org.eclipse.debug.core > .launches의 파일을 모조리 삭제한 후 서버를 restart하면 현재 코드로 돌려요 (Everything 프로그램 없으신 분들은 깔아서 .launches검색하면 바로 나와요) 많은 분들이 시간 낭비 하지 않길 바라며...
1. Double.parseDouble((map.get("decLowestPrice").toString())) 2. Double.parseDouble(String.valueOf(map.get("decLowestPrice"))) 3. NumberUtils.toDouble(String.valueOf(map.get("decLowestPrice"))) 1. toString()로 변환할 인자가 null일때 에러 발생 주의 2. Double.parseDouble로 변환할 인자가 null일때 에러발생 주의 3. 0.0반환 https://mand2.github.io/til/java-str-to-double/ 형변환 할 때마다 참 고민이다. long -> int 형변환은 쉽게 java.lang.Math.toIntExtr..

1. 일단 mybatis에서 CONVERT(#{decimal값 jdbcType=DECIMAL}, DECIMAL(15,2)) 을 해줬을때 insert는 되고 update는 안된다. 2. int값을 mybatis의 parameter를 #{decLowestPrice} 이렇게 설정하고, DB상에서 column자료형을 DECIMAL로 설정하면 자동으로 DECIMAL로 들어감 - 그러나 빈값을 넣을땐 에러 발생 3. 빈값을 넣을때 CONVERT(#{decCommision jdbcType=INTEGER}, DECIMAL(15,2)) 이렇게 설정하면 에러가 안남 - 그러나 값이 테이블에 전혀 안들어감 4. 자바에서 형변환 처리 안하고 String으로 mybatis에 넘긴 후 CAST(#{decLowestPrice jd..
MySQL / MariaDB에서 형변환을 지원하는 CAST / CONVERT함수에 대해서 간략히 정리. 표준 Syntax 지원타입 MySQL MariaDB 5.5~5.6 5.7~8.0 5.5 ~ 10.2 SQL92 CAST(value AS type) DATE DATE DATE ODBC CONVERT(value, type) DATETIME DATETIME DATETIME SQL92 CONVERT(value USING charset) TIME TIME TIME CHAR CHAR CHAR SIGNED SIGNED SIGNED UNSIGNED UNSIGNED UNSIGNED BINARY BINARY BINARY DECIMAL DECIMAL DECIMAL NCHAR NCHAR JSON DOUBLE INTEGER ..