use DB명; 을 써주면 된다. 그럼 전체 마리아db 함수 생성 방법은 use DB명; drop function if exists getName; delimiter $$ create function getName(para varchar(20)) returns varchar(300) begin delare rst varchar(300); select name into rst from tableName; return rst; end $$ select해서 나온 name을 into를 통해 rst에 넣고 rst를 리턴한다.
db 사용 및 개발을 하다보면 새로운 db를 만들어서 사용해야할 일이 생긴다. 그럴때는 먼저 db를 만들고 테이블 스키마를 만든다. 그런 다음 기존 사용자가 그 새로운 db를 사용하기 위해서는 권한을 줘야 한다. 권한을 주지 않으면 사용할 수가 없다. (머 .. 당연한 말인가.. 머 당연한것도 안할때가 있지...) 그래서 기존 사용자에게 신규 db 사용권한을 줘야 하고 그 방법을 알기 쉽게 살펴보면 aaa라는 사용자가 있고 bbb라는 신규 db가 있다고 치자 use mysql; show grants for 'aaa'@'%'; 해보면 권한이 없을 것이다. grant all privileges on bbb.* to 'aaa'@'%'; flush privileges; 이렇게 한다음 show grants for..
MariaDB(MySQL) 제약조건(Constraints) 확인(조회) SELECT * FROM information_schema.table_constraints; information_schema.table_constraints에서 모든 제약조건(Constraints)를 확인할 수 있다. 추가로 아래와 같이 입력 시 해당 테이블에 제약조건을 확인할 수 있다. SELECT * FROM information_schema.table_constraints WHERE table_name='테이블명'; 결과의 constraint_type에 foreign key 이라고 되어 있는게 있다. foreign key 는 권고 사항이 아니다. 아시다 시피 피곤한다. 그래서 삭제하려고 했는데... 이런식으로 ALTER TAB..
마리아 db 백업시 아이디 has insuffient privileges to SHOW CREATE FUNCTION 이런 에러가 날때가 있다. 구글링 해봤지만 딱히 답변이... 추측컨데.. information_schema.schema_privileges 이 테이블에 권한이 정보가 insert가 안되서 그럴듯.. select * from information_schema.schema_privileges; 해봐서 데이터가 있는지 확인! 혹시 정확하게 알고 있는 분은 댓글 좀 달아주세요~~
구글링을 하면 마리아 DB 백업하려 관련글이 많이 나와 있다. 하지만 정확하게 나와 있는것이 별루 없다. 다들 대충 쓴듯.. 테스트도 안해보고.. 그래서 황당한일을 겪을 수도 있고 백업은 중요한데 백업이 안되는 경우가 생길 수 있다. 이상한것은 마리아 db 백업시 mysqldump를 쓰는데 쓰다가 오류가 나도 기존에 백업파일이 있으면 리눅스 시간이 현재로 바뀐다. 그래서 마치 백업이 된것처럼 보인다. 큰일난다.. 확인안해보고 대충하면.. 우선 데이터만 백업하려면 mysqldump -u아이디 -p패스워드 DB명 > /aa/backup/파일명.sql 사람들이 많이 실수하는게 "-u 아이디" 이런식으로 스페이스를 두는데 두면 안된다. 데이터만 쌓여 있는 경우 문제가 없지만 Procedure, Function,..
ORACLE(TIBERO) -> MARIA 쿼리 변경 TIP SQL 오류(1146): Table '' doesn't exist ORACLE 오라클은 테이블명 대소문자 가리지 않는다. MARIA 마리아는 테이블명 대소문자 가린다. 분명 테이블이 있는데 Table doesn't exist 이라고 나오면 테이블명 대소문자를 체크해봐야함. HeidiSQL 좌측 테이블 스키마에는 대문자로 전부 나오는데 쿼리 부분에서는 대소문자 가린다.. LIKE 검색시 ORACLE AND EMP_NAME LIKE '%'|| #{EMP_NAME} || '%' MARIA AND EMP_NAME LIKE CONCAT('%',#{EMP_NAME},'%') INSERT UPDATE ORACLE MERGE INTO AA A USING DU..
마리아 db 10.3 부터는 시퀀스가 있다고 들었는데 현재 10.1을 쓰고 있다. 시퀀스를 써야 하는데... 구글링 해봤는데 잘 안되고 삽질한 후 최종 되는 버전으로 올려보겠다. 먼저 채번 테이블 작성 create table A_SEQUENCE ( SEQ bigint(64) not null auto_increment primary key ) collate='utf8_general_ci' ENGINE=InnoDB ; 그 다음 시퀀스 함수 생성 delimiter // drop function if exists F_SEQ; create function F_SEQ() returns bigint begin declare x bigint; insert into A_SEQUENCE(seq) values(0); sel..
mybatis 문자열 비교를 하다가 삽질을 해서 재발을 막고자 정리해 본다. 내가 삽질한 케이스는.. 예제에는 'GUBUN' 이런식으로 비교 하는게 있어서 'A' 이런식으로 테스트를 했는데 이상하게 비교가 안되는 거였다. 아래글 처럼 문자열은 ' 게 먹히는데 문자는 '게 안먹힌다. 1. isEmpty(str) 문자열이 널 또는 빈 문자열인지 검사 방법 1. 비교문 중 &&는 and 또는 && 로 변환해서 사용 같다 라는 == 는 == 또는 eq로 변환해서 사용할 수 있음 방법 2. 자바로 함수를 만들어 Mybatis에서 호출하는 형식 (출처 첫번째 링크를 따라가면 자세히 알수 있다) - default package 일 때 and user_id = #{userId} - 패키지가 있을 때 2. isEquas..
- Total
- Today
- Yesterday
- 이클립스
- php
- ocjap
- xe addon
- 플러터
- 자바
- KG
- 인포믹스
- C언어
- webix
- 포인터
- esql
- XE3
- 라이믹스 모듈
- xe애드온
- 문자열
- 스크래핑
- MySQL
- proc
- ocajp
- Python
- XE
- 파이썬
- 자바 smtp
- JDBC
- C
- EC
- 파싱
- 프로씨
- 오라클
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |