목록데이터베이스 (7)
알쓸전컴(알아두면 쓸모있는 전자 컴퓨터)
mysql stored procedires visual stdio 로 디버깅 하기 mysql procedures 는 디버깅 하기 어려운 점이 있고 시중에는 유료 프로그램 들이 디버깅이 됩니다. 개발자분이 기본적으로 많이 구매해서 가지고 있는 visual stdio 에서도 mysql 디버깅 해당 기능이 있는 것을 확인 했습니다. 먼저 해당 설치 파일을 설치 합니다. 1. https://dev.mysql.com/downloads/windows/visualstudio/1.2.html2. https://dev.mysql.com/downloads/connector/net/ 2가지 모두 설치 하고 나면 하고 나면 MySQL Databse가 추가 되어 있습니다 정보를 입력 하고 데이터 베이스를 추가 합니다. Debu..
오라클에서 사용한 쿼리를 보는 것은 아래 쿼리를 사용해서 확인 하면되요 select * from v$sql 해당 쿼리에서 쿼리 LOAD 시간등 여러가지 정보를 사용하면 됩니다. 하지만 쿼리중 bind 변수 를 사용한 쿼리는 LOAD Time 을 사용해서 프로그램에서 어떠한 쿼리를 사용했는지 추적하기 어렵습니다. 일단 기본적으로 오라클에서 쿼리가 실행 되면 가.SQL 파싱(Parsing)SQL을 실행하면 제일먼저 SQL 파서(parser)가 SQL 문장에 문법적 오류가 없는지 검사(Syntax 검사)문법적 오류가 없다면 의미상 오류가 없는지 검사(Semantic 검사, 오브젝트 존재유무등)검사를 다 마치면, 사용자가 발생한 SQL과 그 실행계획이 라이브러리캐시(프로시저캐시)에 캐싱되어 있는지 확인캐싱되어 ..
[MS-SQL] 커서(Cursor) 사용하기 커서(Cursor)란?행 단위 작업을 추가로 제어해야 할 경우 사용되는 기능입니다. 커서 선언--커서 생성DECLARE CursorEmail CURSOR FOR SELECT Email from tblUserTable where IsDelete = 'False' 커서 열기--커서 열기Open CursorEmail; 불러온 데이터를 이용한 작업-- 맨처음 결과 데이터로 이동 Fetch Next From CursorEmail Into @email WHILE(@@FETCH_STATUS -1)BEGIN; --원하는 작업 수행 --다음 결과 데이터로 이동 Fetch Next From CursorEmail Into @email; END; 커서 닫기 Close CursorE..
DECLARE @TOP_1_ID VARCHAR(8) SELECT TOP 1 @TOP_1_ID = Employee_ID FROM Sales_Table ORDER BY Sales_Amount DESC SELECT * FROM Employee_Table WHERE Employee_ID = @TOP_1_ID
JOIN의 종류와 사용법 JOIN은 주로 테이블 2개 이상의 다중 테이블에서 서로 데이터를 합쳐 1개의 테이블로 만드는데 사용됩니다. JOIN 종류JOIN 에서는 대표적으로 4가지 조인이 있습니다. 각 상황에 맞게 조인을 사용하는것 입니다. JOIN 사용법 INNER JOIN example SELECT *FROM authors AS a INNER JOIN publishers AS pON a.city = p.city LEFT OUTER JOIN exampleSELECT title, stor_id, ord_num, qty, ord_dateFROM titles LEFT OUTER JOIN salesON titles.title_id = sales.title_id RIGHT OUTER JOIN exampleSEL..
SQL 임시,변수 테이블 사용 데이터 베이스에서 복잡한 쿼리를 사용하다 보면 조인으로 너무나 힘든 부분들이 있습니다. 그래서 찾아 낸것이 테이블을 임시로 생성해서 사용하는것을 찾아 보았습니다. 임시 Table 임시 Table이란 말 그대로 tempdb에 임시적으로 만들어지는 Table로서 특징에 따라 지역임시Table과 전역임시Table 두가지로 나눌 수 있습니다. 지역임시Table은 Table이 생성되는 Session이 끝나면 자동으로 삭제됨니다. 예를들어 Procedure내에서 지역임시Table이 생성되었을때 해당 Procedure가 종료되면 Drop Table을 사용하지 않더라도 자동으로 삭제되는 것입니다. 반면 전역임시 Table은 Table을 사용(참조)하고 있는 모든 작업이 종료되어야만 삭제되..