[Mysql] procedure 만들기
2014. 8. 6. 09:02ㆍDB
1. Mysql 에서 procedure 만들기
- dummy data를 생성해야 할 경우 아래와 같이 프로시져를 만들어서 실행하면 쉽게 dummy data를 만들 수있다.
DELIMITER $$
DROP PROCEDURE IF EXISTS DUM_DATA$$
CREATE PROCEDURE DUM_DATA()
BEGIN
DECLARE i INT DEFAULT 1;
DECLARE log_date VARCHAR(255);
WHILE i <= 20 DO
SET log_date = DATE_ADD( DATE_ADD( DATE_ADD( DATE_ADD( DATE_ADD( DATE_ADD(
NOW(),
INTERVAL (-24*RAND())-1 YEAR),
INTERVAL 11*RAND() MONTH),
INTERVAL 30*RAND() DAY),
INTERVAL 23*RAND() HOUR),
INTERVAL 59*RAND() MINUTE),
INTERVAL 60*RAND() SECOND);
DROP PROCEDURE IF EXISTS DUM_DATA$$
CREATE PROCEDURE DUM_DATA()
BEGIN
DECLARE i INT DEFAULT 1;
DECLARE log_date VARCHAR(255);
WHILE i <= 20 DO
SET log_date = DATE_ADD( DATE_ADD( DATE_ADD( DATE_ADD( DATE_ADD( DATE_ADD(
NOW(),
INTERVAL (-24*RAND())-1 YEAR),
INTERVAL 11*RAND() MONTH),
INTERVAL 30*RAND() DAY),
INTERVAL 23*RAND() HOUR),
INTERVAL 59*RAND() MINUTE),
INTERVAL 60*RAND() SECOND);
-- date를 만들 때 임의에 날짜를 생성함
INSERT INTO bbs (uid, unm, title, content, regdate, readCnt, cat) VALUES ('admin', '관리자', concat('공지',i), concat('내용',i) ,log_date, 0, 'c1');
SET i = i + 1;
END WHILE;
END$$
DELIMITER $$
CALL DUM_DATA;
INSERT INTO bbs (uid, unm, title, content, regdate, readCnt, cat) VALUES ('admin', '관리자', concat('공지',i), concat('내용',i) ,log_date, 0, 'c1');
SET i = i + 1;
END WHILE;
END$$
DELIMITER $$
CALL DUM_DATA;
'DB' 카테고리의 다른 글
[Oracle] 난수 생성 (0) | 2014.12.17 |
---|---|
[Oracle] 중복데이터 제거 쿼리 (0) | 2014.11.07 |
이전글 다음글 select 쿼리 (0) | 2014.04.17 |
[Oracle] 시퀀스 번호 생성 (0) | 2014.04.08 |
[Oracle] alter 속성 (수정 중..) (0) | 2014.04.08 |