본문 바로가기

All

(497)
mariadb instr 함수 커스트마이징 하기 (오라클 버전 파라미터 적용) mariadb instr 함수 커스트마이징 하기 (오라클 버전 파라미터 적용) 안녕하세요. 오늘은 mariadb를 사용하면서 불편한 부분 하나를 좀 개선 했습니다. 이미 뭐 아실만한 분들은 그렇게 사용을 하고 계시겠지만~~ 그래도 편하게 사용 하시라고~ instr 함수를 mariadb에서도 오라클과 같이 사용 할 수 있게 만들어 보았습니다. 1. instr 함수 instr 함수는 어떤 문자열 안에서 특정문자가 몇번째에 위치해 있는지 그 위치값을 반환하는 함수이며, 없다면 0을 반환 하도록 되어 있습니다. 한번 볼까요? select instr('abcabcabcabc','a') from dual; 위와 같이 오라클에서 실행하면 다음과 같이 나오게 됩니다. 당연히 첫번째 위치에 a가 있으니 1이 반환이 되는..
mariadb procedure exception 처리 예제 mariadb procedure exception 처리 예제 안녕하세요. 오늘은 mariadb에서 procedure나 function을 개발하실때 exception 예외처리를 어떻게 하는지에 대한 예제를 기록해보도록 하겠습니다. 1. exception 이란? mariadb에서 procedure나 function을 사용하실때 exception을 이용하여 SQL에러나 데이터가 없을때, 혹은 어떤 로직의 상황에서 벗어나야 할때 exception처리를 해줘야 정확한 SP를 작성 할 수 있습니다. 예외처리를 잘 해야 안그래도 디버깅도 어려운 procedure나 function을 제대로 사용 할 수 있겠죠. 2. exception 종류 저는 exception을 크게 3종류를 사용하고 있습니다. 하나는 not fou..
구글빅쿼리 유용한 문자 숫자 함수정리 구글빅쿼리 유용한 문자 숫자 함수정리 안녕하세요. 요즘 구글 빅쿼리 사용 많이들 하시더라구요. 구글빅쿼리에서 사용 할 수 있는 유용한 문자 숫자 함수들에 대해서 정리를 해보겠습니다. 구글빅쿼리 문자함수 starts_with, ends_with starts_with, ends_with 함수는 초성과 종성을 확인 해주는 문자 함수 입니다. 분석용으로 쓰이는 구글빅쿼리에서 많이 사용 되는 함수 입니다. SELECT STARTS_WITH('Hello', 'o') -- FALSE ,STARTS_WITH('Hello', 'H') -- TRUE ,ENDS_WITH('Hello', 'o') -- TRUE ,ENDS_WITH('Hello', 'H') -- FALSE 구글빅쿼리 문자함수 strpos strpos는 inst..
섬진강자전거길 종주 후기 (구례 ~ 광양) feat.2021시즌오프 섬진강자전거길 종주 후기 (구례 ~ 광양) feat.2021시즌오프 안녕하세요. 섬진강자전거길 두번째 이야기 입니다. 지난번 첫째날 구례에서 종료를 했구요, 이어서 구례에서 시작을 해서, 광양에서 끝나는 두번째날 이야기를 써보도록 하겠습니다. 첫번째 이야기는 하단링크를 통해서 이동하시면 됩니다. 구례에서 준비 및 출발!! 아침에 눈을 뜨고보니 날씨가 어제 보다 더 추운것 같더군요. 습관적으로 날씨를 살펴봅니다. 한, 10시경부터 라이딩을 시작 해야겠다 생각을 하고 준비를 합니다. 그렇게 라이딩을 시작을 했고, 오늘의 첫번째 목적지인 로 이동을 합니다. 날씨가 참 시원하니 좋습니다! 하지만 자전거 탈 수 있는건 올해는 마지막이지 않을까 합니다. 첫날처럼 아름다운 섬진강을 왼쪽에 끼고 라이딩은 계속 됩니다...
mysql 함수를 이용한 인덱스 생성하기 feat.virtual column mysql 함수를 이용한 인덱스 생성하기 feat.virtual column 안녕하세요. 이번에는 mysql에서 함수를 이용한 인덱스를 생성하는 방법은 안내 해드리려 합니다. 오라클에선 잘쓰던 함수를 이용한 인덱스를 Mysql 이나 Mariadb에서 사용 할 수 없어 답답 했었는데, 좋은 정보를 알게되어 공유를 해드립니다. 가상 컬럼 이란? Mysql 5.7 부터 지원되는 가상 컬럼은 가상의 칼럼을 둬서 수식과 조건문을 사용해 데이터의 가공 결과를 저장하는 것을 말합니다. 사용 방법에는 PERSISTENT(stored)와 VIRTUAL(generated-only)이라는 두 가지 타입이 존재합니다. 디폴트는 PERSISTENT 입니다. PERSISTENT virtual columns은 실제 데이터가 데이터..
섬진강자전거길 1박2일 종주 후기 feat.2021시즌오프, ktx 타고가기 섬진강자전거길 1박2일 종주 후기 feat.2021시즌오프 안녕하세요. 오랫만에 로드 라이딩 포스팅을 합니다. 사실 낙동강 종주도 하고 왔습니다만, 최근에 다녀온 섬진강자전거길 종주 후기부터 올리게 되었습니다. 섬진강자전거길은 약 149km의 길로, 당일치기가 가능한 거리이긴 하지만, 부천에 거주하는 저로써는 아침일찍 도착하는 교통편을 찾질 못했습니다. 너무 늦게 끝나면 집으로 돌아올수가 없기 때문이죠. 그래서 부득히하게 1박2일로 진행을 하게되었습니다. 날씨도 춥고, 경치 좋기로 소문난 섬진강길에서 멋진 코스를 많이 보고싶은 마음도 컷기때문 입니다. 그럼 시작해 볼까요? 섬진강자전거길 자전거행복나눔홈페이지에 섬진강자전거길은 다음과 같이 안내가 되고 있습니다. (https://www.bike.go.kr/..
error 1422 Explicit or implicit commit is not allowed in stored function or trigger 마리아DB 펑션 error 1422 Explicit or implicit commit is not allowed in stored function or trigger 마리아DB 펑션 안녕하세요. MariaDB에서 펑션를 개발하는 도중에 만난 에러에 대하여 처리 방법을 공유코자 포스트를 남깁니다. error 1422 이며, function을 개발하는 도중에 만나게 되었습니다. error 1422 Explicit or implicit commit is not allowed.... 해당 에러는 에러 메시지만 봐도 내용을 대강 알 수 있겠죠. 아래와 같이 파파고에서 친절하게 해석을 해줍니다. commit을 쓰지 못한다 인데.. 제가 작성한 펑션에는 커밋이 없었습니다. (뭘 많이 가렸죠? 죄송합니다..) 아무튼, commit이 ..
오라클 utl_encode.text_encode mariadb에선 어떻게 써야 하나? 오라클 utl_encode.text_encode mariadb에선 어떻게 써야 하나? 안녕하세요. 오라클 to Mariadb로 전환 프로젝트를 진행 하고 있습니다. SP들이 몇개 있어서, procedure 변환도 함께 진행을 하고 있습니다. 그와중에 나오는 몇가지 오라클 함수들을 mariadb에서 어떻게 구현을 해야 하는지 정리를 해두겠습니다. UTL_ENCODE UTL_ENCODE는 호스트 간의 데이터를 전송할 수 있도록 표준 인코딩 기술로 인코딩하는 함수를 제공하는 패키지 입니다. 이중에서 우리가 사용한 TEXT_ENCODE 은 문자 집합을 갖는 문자열을 인코딩하는 함수이며 변경할 문자 집합에 따라 텍스트를 변환하고 인코딩 합니다. 사용법은 다음과 같죠. select utl_encode.text_en..