목록개발/Oracle/SQL/ERD (27)
SNOWFLAKES DRAWING PAPER
다운로드https://sourceforge.net/projects/tadpoledbhub/files/1.7.x/1.7.1/ Tadpole DB Hub 설명 http://allinfo.tistory.com/1252 http://ora-sysdba.tistory.com/entry/Tadpole-DB-Hub-Tadpole-DB-Hub%EC%98%AC%EC%B1%99%EC%9D%B4-%EB%B3%B8%EA%B2%A9-%ED%99%9C%EC%9A%A9%ED%8E%B8
링크다운1 다운2HOMEHOME 지원표HOMEHOMEHOME다운HOME다운HOMEHOME 출처:phpschool
오라클 시퀀스 생성(자동증가) create sequence test_seq; CREATE OR REPLACE TRIGGER test_trigger BEFORE INSERT ON CD_POST_NO FOR EACH ROW BEGIN SELECT test_seq.NEXTVAL INTO :new.seq FROM dual; END; unique key를 생성하는 방법은 DBMS마다 차이가 있다. MS-SQL은 IDENTITY를, MySQL은 auto_increment와 같이 쉽게 사용할 수 있는 방법이 있는데 오라클에서는 다음과 같이 유사하게 구현할 수 있다. SQL> create table t ( 2 seqno number primary key, 3 id varchar(10), 4 name varchar(10..
1. to_number() ---> cast() ex) to_number(holiday_mon) --> cast( holiday_mon AS signed ) 2. to_char(sysdate,'yyyymmdd') => CAST( DATE_FORMAT( now( ) , '%Y%m%d' ) AS CHAR ) 3. 년월일시분초 => CAST( DATE_FORMAT( now( ) , '%Y%m%d%H%i%s' ) AS CHAR ) 4. rownum => SELECT @rownum:=@rownum+1 rownum, t.* FROM (SELECT @rownum:=0) r, mytable t; 5. to_char(balance,'999,999,999,999') => format(balance,0) 6. decode ..
오라클 dump export 오라클 덤프 export 방법 windows 1.cmd 창 띄우기 2.cmd 창에서 발로 명령어를 실행 3.exp 명령어 help 보기 c:\>exp help=y 4.명령어에서 자세한 옵션 내용을 확인하여 옵션을 설정할 수 있다. 5.간단한 명령어를 통한 exp 실행방법 exp user/userpw@TNSname full=n file=filename.dmp user : 오라클 계정 유저명 userpw 오라클 계정 유저 패스워드 TNSname : 해당 TNS name full=n : 계정의 파일들을 export 하겠다는 의미(기본세팅 : n) y로 설정시 무한 대기 시간이 기다리고 있음..(아마도 권한에 의해서 권한이 가져올수 있는 전체파일을 가져오는것 같음..system까지 ..
case prog_gb_cd 컬럼값이 1이면 '접수' , 2이면 '처리중', 3이면 '완료' , 나머지는 '미접수'라고 찍는다. select case prog_gb_cd when 1 then '접수' when 2 then '처리중' when 3 then '완료' else '미접수' end from WRK_INC_DECL
저장 프로시져, 저장 함수, 트리거 예제 모음 1 [저장된 프로그램에 인베디드된 쿼리문] create procedure example1() begin declare l_book_count integer; select count(*) into l_book_count from books where author like '%HARRISON,GUY%'; select concat('Guy has wriitten (or co-written) ', l_book_count , ' books.'); update books set author = replace(author, 'GUY', 'GUILLERMO') where author like '%HARRISON,GUY%'; end [제어와 조건 로직을 가진 저장 프로시져]..
저장 프로시져, 저장 함수, 트리거 예제 모음 2 [간단한 저장 프로시져] delimiter// drop procedure if exists helloworld// create procedure helloworld() begin select 'Hello World"; end // delimiter; mysql> call helloworld(); [저장 프로시져 안에 변수들] delimiter// drop procedure if exists variable_demo() create procedure variable_demo() begin declare my_integer int; declare my_big_integer bigin; declare my_currency numeric(8,2); declare..
MySQL 자체 메뉴얼 활용하기 mysql> help Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 9 Server version: 5.0.68-enterprise-log MySQL Enterprise Server (Commercial) Type 'help;' or '\h' for help. Type '\c' to clear the buffer. mysql> help For information about MySQL products and services, visit: http://www.mysql.com/ For developer information, including the MySQL Refer..
테이블 구조보기 - Show Create Table [..] - explain [..] 데이타 입력하기 - LOAD DATA INFILE [ 파일명 ] INTO TABLE [ 테이블명 ] FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"' LINES TERMINATED BY '\n'; 만약 truncate 가 포함된 단어의 오류문장이 뜬다면 다음을 확인해 보기바람 !! 윈도우 텍스트 파일인 경우 TERMINATED BY '\r\n' 을 사용해야 함. - LOAD DATA INFILE [ 파일명 ] INTO TABLE [ 테이블명 ] ( [컬럼1], [컬럼2] ); MySQL Dump뜨는 방법 및 복구 방법 - http://sir.co.kr/bbs/board.php..
MySQL 기본문법 지난 강좌에서 MySQL을 설치하 는 과정및 방법을 보았다. 이번 강좌에서는 MySQL을 구동하는 과정 과 간단한 사용법을 보겠다. (1) MySQL의 기초지식 1)문자 문자열은 작은 따옴표(')혹은 큰 따옴표(")로 둘러쌓여 구분된다. '여기는 깨비도 가 이끌어가는 강좌이다.' "물론 깨비도가 만들어가는 강좌는 ..." 역 슬래시(\)를 사용하면 특별 한 의미를 가지게 되는 문자도 있다. \0 널문자(null) \n 개행문자 \t 탭(tab) \r 캐리지 리턴(carriage return) \b back space \' single quote(') \" double quote(") \\ 역슬래시(\) 문자 \% 퍼센트(%) 기호 검색시에 사용되 는 % 문자가 아닌 그냥 문자 \_ _..
이 메뉴얼은 http://www.mysqlkorea.co.kr/sub.html?mcode=develop&scode=01&lang=k 의 한글메뉴얼 중 겨우 3장을 정리한 내용입니다. 버전은 5.0 기준이므로 이보다 낮은 버전의 MySQL에서는 몇 가지 기능이 실행되지 않습니다. 좀 더 자세히 SQL문에 대해 알고 싶으시다면 한글 메뉴얼의 13장을 보세요. 레퍼런스 북처럼 되어 있습니다. 참고하세요. mysql 실행시 -h: MYSQL서버의 IP또는 호스트명 -u: 유저명 -p: 패스워드 -D: 데이터베이스명 ex) mysql -h localhost -u root -p // localhost에 root라는 유저명의 유저가 접속, -p를 쓰면 패스워드를 묻는 절차가 실행됨 // 귀찮다면 만약 패스워드가 my..
MySQL 내장 함수 정리 1. 숫자 관련 함수 ▶ ABS(숫자) - 절대값 출력. ▶ CEILING(숫자) - 값보다 큰 정수 중 가장 작은 수. ▶ FLOOR(숫자) - 값보다 작은 정수 중 가장 큰 수[실수를 무조건 버림(음수일 경우는 제외)]. ▶ ROUND(숫자,자릿수) - 숫자를 소수점 이하 자릿수에서 반올림.(자릿수는 양수,0,음수를 갖을 수 있다.) ▶ TRUNCATE(숫자,자릿수) - 숫자를 소수점 이하 자릿수에서 버림. ▶ POW(X,Y) or POWER(X,Y) - X의 Y승 ▶ MOD (분자, 분모) - 분자를 분모로 나눈 나머지를 구한다.(연산자 %와 같음) ▶ GREATEST(숫자1,숫자2,숫자3...) - 주어진 수 중 제일 큰 수 리턴. ▶ LEAST(숫자1,숫자2,숫자3....
MySQL date_format Cut and Paste date_format strings for MySQL select date_format(date, '%a %D %b %Y') as formatted_date from table_name; Where date is the name of your date field, and formatted_date is a variable name which you can use to retrieve the value. Example Date: 1st April 2005 Replace date with the name of your date field... date_format String Example 1/4/2005 UK 4/1/2005 US 01/04/2005..
mysql event Mysql 5.1.17 에서부터는 Event 란 기능을 어느정도 이용할수 있다고 한다. Event 란 특정 시간에 어떠한 쿼리 프로시저 함수등을 실행 시키는것을 말한다. 우선 root 권한으로 작업을 한다는 가정하에 적는다. Event 를 사용하기위해서는 1. 서버가 동작중이라면 아래와 같은 SQL문을 통해 실행할수 있다. SET GLOBAL event_scheduler = ON; SET @@global.event_scheduler = ON; SET GLOBAL event_scheduler = 1; SET @@global.event_scheduler = 1; 2. my.cnf or my.ini 에 옵션(event_scheduler=On)을 추가하고 mysql 을 시작한다. 반대로 E..
Mysql - ErrCode Error code 1: 명령이 허용되지 않음 Error code 2: 그런 파일이나 디렉토리가 없음 Error code 3: 그런 프로세스가 없음 Error code 4: 중단된 시스템 호출 Error code 5: 입력/출력 오류 Error code 6: 장치가 설정되지 않았음 Error code 7: 인수 명단이 너무 깁니다 Error code 8: Exec 형식 오류 Error code 9: 잘못된 파일 기술자 Error code 10: 자식 프로세스가 없음 Error code 11: 자원이 일시적으로 사용 불가능함 Error code 12: 메모리를 할당할 수 없습니다 Error code 13: 허가 거부됨 Error code 14: 잘못된 주소 Error code ..
cursor & insert error check example 소스 설명 : cursor와 삽입시 에러 체크를 이용한 staTest1(table)에 있는 값을 staTest2(table)로 옮기는 예제 ---------------------------------------------------------------------------------- Drop procedure if exists sp_rt_sta_set_Test ; DELIMITER | CREATE PROCEDURE sp_rt_sta_set_Test() BEGIN DECLARE stID int unsigned; DECLARE stName varchar(20); DECLARE stValue varchar(20); DECLARE done in..
MySQL Trigger Trigger란? 테이블에 미리 지정한 어떤 이벤트가 발생할 때 활동하도록한 테이블과 연관된 데이터베이스에서 이름붙인 하나의 객체를 의미하는 것으로 트리거 역시 임의의 테이블에 대해 SQL 문장이 실행될 때 임의의 조건을 만족하는 경우 해당되는 명령을 처리하는 방식으로 사용된다. (MySQL은 5.0.x 이상부터 Trigger 를 지원) -------------------------------------------------------------------------------------- TRIGGER의 종류 트리거는 SQL문이 언제 실행되느냐에 따라 또는 트리거하는 SQL 문장에 의해 영향받는 각 row에 대해 트리거가 실행되느냐 아니냐에 따라 다음과 같이 분류된다. SQL문..
mysqldump Option * 데이터만 백업 mysqldump -u userName -p -t DBname > SaveFileName * 프로시저만 백업 mysqldump -u userName -p mysql proc > SaveFileName - proc : procedure 저장되는 테이블 (mysql DB에) - mysql(DB) : 기본으로 있음 * 프로시저 포함한 전체 백업 mysql -u root -p --routines DBname > SaveFileName * 데이터를 제외하고 스키마만 덤프 mysqldump -u userName -p -d DBname > SaveFileName * 덤프 이후에 출력물의 앞에 drop table 명령 추가 mysqldump -u userName -p -..
[설명] mysql 각각의 테이블에대한 정보를 출력한다. [사용방법] mysql>show table status from [데이타베이스이름]; -Name : 테이블 이름 -Type : 테이블 타입 -Row_format : 열저장 형태 (fixed,Dynamic,Compressed) -Rows : 열의 수 -Avg_row_length : 열의 평균 길이 -Data_length : 데이타파일의 길이 -Max_data_length : 데이타파일의 최대길이 -Index_length : 인덱스 파일의 길이 -Data_free : 사용되지않는 bytes 에 할당된 수 -Auto_increment : 다음 자동증가 변수 -Create_time : 테이블이 생성된 시간 -Update_time : 데이타파일의 마지막 U..
http://dev.mysql.com/doc/refman/5.0/en/column-types.html TINYINT (-128 ~ 127) SMALLINT (-32768 ~ 32767) MEDIUMINT (-8388608 ~ 8388607) INT (-2147483648 ~ 2147483647) BIGINT (-9223372036854775808 ~ 9223372036854775807) FLOAT DOUBLE DECIMAL(NUMERIC) DATE (1000-01-01 ~ 9999-12-31, YYYY-MM-DD) DATETIME (1000-01-01 00:00:00 ~ 9999-12-31 23:59:59, YYYY-MM-DD HH:MM:SS) TIMESTAMP (1970-01-01 00:00:00 ~ ..
MYSQL Stored Procedure 생성(mysql 변수 이용) /********************************************************************* sp_get_RecordAds_Info_count(searchType int(10), searchText varchar(10)); searchType : 0(전체) 1(광고Tag) => return string[] string[0] : 광고 id string[1] : 광고Tag */*********************************************************************/ Drop procedure if exists sp_get_RecordAds_Info; DELIMITER |..
1. 새로운 사용자 등록 (GRANT 이용) (1) MySQL에서 모든 권한을 갖는 관리자용 사용자(root)를 추가할 때 mysql> GRANT ALL PRIVILEGES ON *.* to root@localhost IDENTIFIED BY 'password' \ WITH GRANT OPTION; (2) 일반 사용자(user)에게 자신의 DB(mydb)의 모든 테이블에 모든 권한을 부여할 때 mysql> GRANT ALL PRIVILEGES on mydb.* to user@localhost IDENTIFIED BY 'password'; 2. MySQL의 root 사용자 암호 바꾸기 (mysqladmin 이용) (1) root 패스워드 변경하기. mysql> mysqladmin -u root passwo..
MySQL Workbench를 이용한 ER diagram 작성 및 sql import/exrpothttp://cafe.naver.com/q69/119904
InnoDB 와 MyISAM http://cafe.naver.com/itbankstart/74
PROCEDURE OUTPUT TEST SET QUOTED_IDENTIFIER ON GO SET ANSI_NULLS ON GO -- uSP_test1 Alter PROCEDURE uSP_test1 as declare @test varchar(100) execute uSP_test2 @test output select @test GO SET QUOTED_IDENTIFIER OFF GO SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO SET ANSI_NULLS ON GO -- declare @test as varchar(100) -- execute uSP_test2 @test output -- select @test -- uSP_test1 Alter PROCEDURE ..