본문 바로가기
728x90
반응형

DataBase13

[MSSQL] 프로시져(SP)에서 반환하는 테이블유형의 데이터를 임시테이블에 담아서 사용하기 --프로시져에서 반환한 테이블이형식의 정보를 담을 임시테이블을 선언한다. --형식은 프로시져에서 반환하는 데이터값과 동일하게 맞추어준다. DECLARE @TMP_TABLE TABLE ( NAME VARCHAR(10) AGE INT ) --프로시져를 실행하고 임시테이블에 담는다. INSERT INTO @TMP_TABLE EXEC USP_EMPLOYEE_GET '010-2222-3333' --담은 값 조회 하기 SELECT * FROM @TMP_TABLE 2020. 12. 14.
[MSSQL] SELECT 절에 불필요한 데이터 없애고 가져오기, 가비지데이터 제거 , 공백제거 등 Line Feed : CHAR(10) - 라인피드: 현재 위치에서 아래 라인으로 이동함 Carriage Return : CHAR(13) - 캐리지리턴: 커서의 위치를 앞으로 이동 Tab : CHAR(9) - 키보드에 있는 TAB키의 값입니다. 공백하고는 다르죠 CHAR 에 들어가는 숫자 10, 13, 9는 아스키 코드값입니다. 아스키 코드표 참조 하시면 됩니다. 그래서 SELECT 시 간혹 위 값들이 포함되어 눈에 보이지 않아 오류가 발생할 때도 있습니다. 이때 위 값들을 제거 하고 가져오도록 하는 SELECT 문입니다. SELECT REPLACE(REPLACE(REPLACE(REPLACE( 이름, CHAR(10),''),CHAR(13),''),CHAR(9),''),' ','') FROM 학생 위 SEL.. 2020. 12. 4.
쿼리는 빠른데 프로시져는 느린 현상 해결하기 어플리케이션에서 DB조회 시 느린 경우가 발생했다. 소스에서 해당 프로시져를 찾았고 DB툴에서 그대로 실행해보니 역시나 느렸다 그런데 프로시져 내 쿼리만 따서 조건값 입력하고 조회했더니 겁나 빠른것이다. 해당 프로시져를 DROP 후 다시 생성 했더니 잘 된다. 그러나!! 같은 증상이 계속 발생해서 더이상 안되겠다 싶어서 폭풍 검색 시작! 알아낸 원인은 이렇다. --기존 오류 쿼리 ALTER PROCEDURE [dbo].[usp_상품조회_Get] @상품코드VARCHAR(50) AS BEGIN SELECT * FROM 상품테이블 WHERE 상품코드 = @상품코드 END --오류해결 수정 ALTER PROCEDURE [dbo].[usp_상품조회_Get] @상품코드VARCHAR(50) AS BEGIN DECLA.. 2020. 12. 1.
정보처리 자격증 필수 암기 항목 - DML, DDL, DCL, TCL 데이터베이스 명령어의 종류 명령어 종류 명령어 설명 데이터 조작어 (DML : Data Mainpulation Language) SELECT 데이터 베이스에 저장된 데이터를 조회하거나 검색하기 위해 사용한다. INSERT UPDATE DELETE 데이터베이스의 테이블에 저장된 데이터들을 수정변경,삭제,입력 등을 하고자 할때 사용하는 명령어들이다. 데이터 정의어 (DDL: Data Control Language) CREATE ALTER DROP RENAME 테이블과 같은 데이터 구조를 정의하는데 사용되는 명령어들로 그러한 구조를 생성하거나 변경하거나 삭제하거나 이름을 바꾸는 데이터 구조와 관련된 명령어들을 DDL 이라고 부른다. 데이터 제어어 (DCL: Data Control Language) GRANT REVOKE 데이터베이스에 .. 2020. 11. 18.
728x90
반응형