728x90

전체 글 331

중첩트리거(nested trigger), 재귀트리거(recursive trigger)

1. 중첩 트리거 : 트리거가 동작해서 다른 테이블의 값을 변경한다면 이런 동작을 CASCASE INSERT(또는 UPDATE, DELETE) 라고 한다. 이렇게 CASCADE 동작을 할 때 대상이 되는 테이블에 또 트리거가 걸려 있다면 이 트리거도 동작 하게 된다. 이런식으로 중첩 트리거는 SQL7.0에서 32단계 까지 동작 할 수 있다. sp_configure ‘nested trigger’, 0; -- 0-> 1로 변경해주면 실행 됨 GO reconfigure; GO 2. 재귀 트리거(Recursive Trigger) : 트리거가 자기 자신을 다시 부르는 것을 재귀 트리거라고 한다. 이때 무한 루프에 빠지지 않도록 빠져 나오는 루틴을 처리해야만 한다. 재귀트리거는 default 가 off 되어 있다...

MS-SQL 2022.12.10

AFTER 트리거, INSTEAD OF 트리거

AFTER 트리거와 INSTEAD OF 트리거 - Version : SQL Server 2005, 2008, 2008R2, 2012 트리거는 SQL Server에서 이벤트가 발생하면 자동으로 실행되는 특수한 종류의 저장 프로시저이다. DML, DDL, LOGON 트리거를 생성 할 수 있다. 트리거는 FOR|AFTER 와 INSTEAD OF 인수가 있다. FOR|AFTER : AFTER는 DML 트리거를 지정한 모든 작업이 성공적으로 실행되었을 때만 트거가 실행도록 지정한다. 모든 참조 연계 동작 및 제약 조건 검사도 이 트리거가 실행되기 전에 성공해야 한다. INSTEAD OF : 트리거를 시작하는 SQL문 대신 DML 트리거가 실행되도록 지정한다. DDL 또는 LOGON 트리거에 대해서는 INSTEAD..

MS-SQL 2022.12.08

트리거란? (+예제)

트리거란? 트리거(Trigger) 는 방아쇠라는 뜻인데, DBA라면 기본으로 자주 접할 것이고, 소규모 회사의 개발자라면 직접 DB까지 관리해야 하는 경우도 있는데, 어느정도는 알아두면 좋을 것 같습니다. 개념이나 자세한 이론은 검색하면 많이 나오니, 간단하게 설명하고, 어떻게 사용하면 되는지 간단한 예제로 설명하겠습니다. 트리거는 Oracle 등 다른 RDMBS도 지원하는 기능인데, MS-SQL에서만 사용해 보았습니다. (그래서 제목을 MS-SQL로 달아놓았고, MS-SQL을 기준으로 설명합니다. Oracle 도 사용법 등은 조금 다르지만, 그 사용 목적은 다르지 않습니다.) 위의 뜻처럼 DB에서 어떤 특정 이벤트가 발생하면 자동으로(방아쇠 당기면 총알이 나가듯이) 무언가 실행이 된다는 것으로 보면 되..

MS-SQL 2022.12.08

커서란? (+예제)

커서 행 단위 작업을 효율적으로 하기 위한 방식으로 테이블에서 여러 개의 행을 조회한 후 쿼리의 결과를 한 행씩 처리하는 방식입니다. SELECT 한 결과(행 집합)를 반복 작업해줘야 할 경우 유용하게 사용 가능 한 방식입니다. 커서의 특징 1. 커서는 내장 SQL 문의 수행 결과로 반환될 수 있는 복수의 튜플들을 액세스 할 수 있도록 해주는 개념입니다. 2. 커서는 질의 수행 결과로 반환되는 첫 번째 튜플에 대한 포인터로 생각할 수 있습니다. 3. 커서를 사용하여 질의 결과로 반환될 수 있는 튜플들을 한 번에 하나씩 차례대로 처리할 수 있습니다. 커서 관련 명령어 DECLARE : 커서를 정의하는 등 커서에 관련된 선언을 하는 명령입니다. OPEN : 커서가 질의 결과의 첫 번째 튜플을 포인트 하도록 ..

MS-SQL 2022.12.08

MS-SQL 함수란? (스칼라, 테이블 반환 함수 등..)

시스템 즉 DBMS 가 제공하는 시스템 함수 말고 개발자들이 만들 수 있는 사용자 정의 함수를 살펴 보자 사용자 정의 함수는 2가지 유형 - 테이블 반환 함수,스칼라 반환 함수 1. 스칼라 함수 단일 데이터를 리턴하는 함수 입니다. 가장 많이 사용되고 있죠. 개인적으로는 이 유형만 씁니다. 시스템 함수들 대부분도 스칼라 함수입니다. ( AVG(),SUM() 등 ) CREATE FUNCTION 함수이름 ( 파라미터 데이터타입, 파라미터 데이터타입,… ) RETURNS 리턴값의 데이터타입 [WITH 함수_옵션 ] [AS] BEGIN FUNCTION BODY RETURN 단일한 리턴값 END 리턴값의 데이터 타입 중 text,ntext,timestamp 등은 해당되지 않습니다. 컴파일 때 에러 나옵니다. ( ..

MS-SQL 2022.12.08

MSSQL 날짜 변환표(GETDATE, CONVERT)

MSSQL 날짜 변환표 (기준날짜를 대상으로 CONVERT 실행하여 날짜 형변환) 번호 쿼리 결과 코드 0 CONVERT(CHAR(19), DATETIME, 0) 01 02 2000 1:14PM MM DD YYYY H:MM 1 CONVERT(CHAR(10), DATETIME, 1) 01/02/2000 MM/DD/YYYY 2 CONVERT(CHAR(8), DATETIME, 2) 00.01.02 YY.MM.DD 3 CONVERT(CHAR(8), DATETIME, 3) 02/01/00 DD/MM/YY 4 CONVERT(CHAR(8), DATETIME, 4) 02.01.00 DD.MM.YY 5 CONVERT(CHAR(8), DATETIME, 5) 02-01-00 DD-MM-YY 6 CONVERT(CHAR(8),..

MS-SQL 2022.12.07

컬럼에 AUTOINCREMENT 설정

MYSQL에서는 KEY값에다가 AUTO INCREMENT 라고 써주며 되었던 것 같은데, MSSQL에서는 조금 다른 것 같다. | 방법1. CREATE TABLE 테이블 생성 할 때, 컬럼명 옆에 아래와 같이 IDENTITY 라고 작성해 준다. [MEDIA_SEQ] [int] IDENTITY(1,1) NOT NULL, [CATEGORY] [nvarchar](50) NOT NULL, [FIMENAME] [nvarchar](50) NOT NULL, | 방법2. Microsoft SQL Server Management studio 출처 : https://clover7-webnote.tistory.com/124 [MSSQL] AUTOINCREMENT 설정하기 MYSQL에서는 KEY값에다가 AUTOINCREMEN..

MS-SQL 2022.12.06

datepart 함수 - 원하는 날짜 형태로 변환하는 함수

DATEPART 함수는 지정한 날짜에서 원하는 날짜 형태를 출력하는 함수 DATEPART 함수 사용하는 방법 DATEPART ( datepart , date ) DATEPART 함수 사용 예제 * 현재 년도 출력하기 SELECT DATEPART(yyyy,GETDATE()) * 현재 월 출력하기 SELECT DATEPART(mm,GETDATE()) * 현재 일 출력하기 SELECT DATEPART(dd,GETDATE()) * 그 외, datepart 인수 DATEPART 함수를 사용하여 출력할 수 있는 datepart 인수는 다음과 같다. datepart 인수 약어 year yy, yyyy quarter qq, q month mm, m dayofyear dy, y day dd, d week wk, ww w..

MS-SQL 2022.12.06

상위 요소 선택자(parents(), parents("요소 선택")

상위 요소 선택자 - 선택한 요소를 기준으로 모든 상위 요소를 선택하거나 상위 요소 중 선택하고자하는 요소만 선택할 때 사용 기본형 $("요소 선택").parents(); $("요소 선택").parents("요소 선택"); - 예제 선택자 내용 내용 출처 : https://shgdx.tistory.com/57?category=954801 [JQuery] 선택자 - 인접 관계 선택자 1. 개발 환경 구분 내용 사용 언어 HTML5, CSS3, JS, jQuery 개발환경 Visual Studio Code 참고 도서 [Do it] 자바스크립트 + 제이쿼리 입문 웹브라우저 Chrome 2. 주요 문법 1) 인접 관계 선택자 - 직접 선택자로 요 shgdx.tistory.com

jQuery 2022.12.05

jQuery 선택자 모음

1. 기본 선택자 - $('h1').css('color', 'red'); - ('h1') 선택자와, css('color', 'red') 메서드 - 문서 객체를 다룰 때 사용하는 형태 - CSS 선택자와 유사 1.1. 전체 선택자 (Wildcard Selector) - * - HTML 페이지에 있는 모든 문서 객체를 선택 1.2. 태그 선택자 - 태그명 - 특정한 태그를 선택 1.3. 아이디 선택자 - #아이디명 - 특정한 id 속성이 있는 문서 객체를 선택 Header 1.4. 클래스 선택자 - .클래스명 - 특정한 class 속성이 있는 문서 객체를 선택 Header1 Header2 Header Header Header Header 2. 자손 선택자와 후손 선택자 - 기본 선택자의 앞에 붙여 사용 - ..

jQuery 2022.12.05
728x90