본문 바로가기

728x90
반응형

프로그래밍&IT/MySQL & Oracle

(4)
PL/SQL 블록 구조 이번 프로젝트에 투입되면서 오라클 특히 프로시저 부분을 다시 만지게 되었다. Stored Procedure 자주 실행해야 하는 업무 흐름을 미리 Database에 저장해 두고 필요할 때마다 호출해 실행 기본적인 Procedure의 block 구조 CREATE [OR REPLACE] PROCEDURE 프로시저_이름 ( 변수 1 [MODE (IN/OUT) ] data-type 1 , ... 변수 n [MODE (IN/OUT) ] data-type n ) IS [사용할 변수 선언부] BEGIN 로직 처리/실행 [EXCEPTION] [예외 처리부] END; 1. CREATE OR REPLACE PROCEDURE 프로시져_이름 - 프로시저 선언부 보통은 [OR REPLACE] 부분을 붙이고 한다. 2. 프로시저의..
MySQL 에서 auto_increment 값 초기화 하기 auto_increment 값 초기화 하기 History 성 테이블 등Primary Key 및 인덱스용 컬럼으로 AUTO_INCREMENT를 간혹 사용하게 됩니다. 테스트를 하다가 늘어난 auto increment컬럼의 갯수를실제 적용이나 필요의 이유로 초기화 할때 alter table [테이블명] auto_increment = 1 위의 명령으로 초기화합니다. 근데, row가 존재할땐 초기화가 안되고데이터를 다 지운후 써야 다시 1로 셋팅되는듯한데...???
MySQL 스토리지 엔진 MySQL의 테이블 작성의 기본인 스토리지 엔진을 알아보자. MySQL의 스토리지 엔진을 알아야 할것같다는 생각이 듭니다.여태까지 Oracle, MsSQL위주로 업무를 했고 (잘 하진못하지만...)MySQL은 개인적으로 쓰기위해서 배우고 있는데 쌓이는 데이터 특성에 따라테이블의 스토리지엔진을 각기 설정해서 써야할것같습니다. foreign key를 쓰기위해선 기본적으로 InnoDB의 스토리지 엔진을 써야한다는건 이번에 봤네요... show engines;현재 설치돼있는 MySQL 서버에서 지원되는 스토리지 엔진 확인 위의 Support 컬럼별 설명 Yes 해당 스토리지엔진이 포함돼있고, 사용 가능으로 활성화된 상태 Default "YES"와 동일한 상태지만 필수 수토리지 엔진임 의미 즉 이 스토리지 엔진없..
MySQL 기본 함수 - 현재 일자 구하기 (시간은 오전 12:00:00로 표기됨) CURDATE() - 현재 시간 구하기 NOW() - 현재일자를 YYYYMMDD로 구하기 (대소문자 주의) DATE_FORMAT(CURDATE(), '%Y%m%d') - Oracle의 NVL 과 같은 함수 IFNULL MySQL 내장 함수 정리 1숫자 관련 함수 - ABS(숫자) - 절대값 출력 - CEILING(숫자) - 값보다 큰 정수 중 가장 작은 수 - FLOOR(숫자) - 값보다 작은 정수 중 가장 큰 수[실수를 무조건 버림(음수일 경우는 제외)] - ROUND(숫자,자릿수) - 숫자를 소수점 이하 자릿수에서 반올림.(자릿수는 양수,0,음수를 갖을 수 있다.) - TRUNCATE(숫자,자릿수) - 숫자를 소수점 이하 자릿수에서 버림 ..

반응형