본문 바로가기

SQL22

[C#, Cosmos DB] 날짜 사용 (feat. Z) 오늘의 에러는 같은 조건의 SQL을 사용하는데 - 한 SQL은 계획한 대로 작동하고, - 다른 한 SQL은 마지막 데이터가 빠져서 작동하였다. 다행히 예전에 SQL의 'Z' 사용에 대해서 읽은 적이 있어서 쉽게 해결하였다. 무슨 말인가 하면, 날짜 형식의 string에 'Z'가 있느냐, 없느냐에 따라 작동이 달라진다는 것이다. 따라서 "2021-06-03T01:00:00.000" 는 "2021-06-03T01:00:00.000" 시각의 데이터를 포함하지 못하고, "2021-06-03T01:00:00.000Z"는 "2021-06-03T01:00:00.000" 시각의 데이터를 포함할 수 있어서 계획한 대로 데이터를 출력해 준다. 결국 "Z"를 붙여서 정확하게 사용해야, 정확한 결과를 얻을 수 있다. 관련 문.. 2021. 6. 8.
[MYSQL] WHILE문 WHILE 조건 DO 실행할 문장 END WHILE; WHILE문을 사용하려고 알아봤는데 모든 예제에 프로시져가 붙어 있었다. 이유가 데드락 때문이라고 하던데... 입문자인 나는 잘 모르겠다. 그래도 모두 쓰는 데에는 이유가 있으니.. 그리고 프로시져를 쓸 때에는 DELIMITER를 꼭 사용한다. WHILE문 하나 알아보는데 몇개를 알게 된건지... 나는 https://www.mysqltutorial.org/mysql-stored-procedure/mysql-while-loop/를 참고했다. 많은 설명이 있어서 좋다. 영어라는 점은.... MySQL WHILE Loop Explained By a Practical Example In this tutorial, you will learn how to use.. 2020. 4. 8.
[MYSQL] 비어있는 문자 0으로 채우기 LPAD : 왼쪽에 채우기 RPAD : 오른쪽에 채우기 EX) LPAD(1,'3','0') = 001 LPAD(2,'3','0') = 002 ... ... ... LPAD(넣을 값, 최대 갯수, 빈 곳에 들어갈 문자) 이런 순서로 작성하면 된다. 2020. 4. 8.
plsql 예외 3가지 정의된,정의되지 않은,사용자 정의. /*패키지 : 연관성 있는 함수나 프로시저를 그룹으로 모아놓은 개념패키지 구성 : 선언부 + 몸체부 - 선언부/구문 형식/create [or replace] package 패키지명is[as] prucedure 프로시저 1명, prucedure 프로시저 2명, ...end; -몸체부/구문 형식/create [or replace] package body 패키지명is[as] procedure 프로시저 이름 subprogram bodies : 실제 작동하게 될 서브프로그램(프로시저, 함수)end; --패키지 삭제drop package 패키지명;drop package body 패키지명; --패키지 실행 방법exec 패키지명.서브프로그램명;*/ 2018. 4. 9.
4월 3일 SQL 시험 1. 무결성 3가지 의미와 제약 대상 2. 시퀀스 의미, 특징, 용도 시퀀스는 롤백없다.별도의 오브젝트 공간에 저장된다.대리키, 3. SYNONYM 사용목적 두가지 보안,편의성보안 : 원 객체의 이름과 소유자가 드러나지 않는다.편의성 : 이름을 별칭으로 짧게 바꿀 수 있고, 접근하는 이름도 짧게 바꿀 수 있다. 4. 인덱스 유효성 검사.(절차, 쿼리)인덱스에 허수값이 많을 때 성능이 떨어진다.그 테이블 뿐만 아니라 조인된 테이블까지 성능 저하된다.TABLE ACCESS가 많은 테이블에 INDEX REBUILD절차를 쓰고 쿼리문을 적어봐라절차1) 인덱스 분석 자료 수집2)3) 리빌드 수행 조건 20% 5. 역할 ROLE 생성 및 권한 부여권한의 집합.CREATE ROLE PROGRAMMER;GRANT TO.. 2018. 4. 2.
데이터 무결성 도메인 무결성 제약조건개체 무결성 제약조건참조 무결성 제약조건 P.88 2018. 3. 30.
SEQUENCE / SYNONYM SEQUENCE(시퀀스) : SYNONYM(동의어) : /* 시퀀스(sequence) : 연속적인 번호를 만들어주는 기능 구문형식 CREATE SEQUENCE sequence_name [INCREMENT BY n] -- 시퀀스 번호의 증가값으로 기본값은 1 [START WITH n] -- 시퀀스 시작 번호로 기본값은 1 [MAXVALUE n | NOMAXVALUE] -- 생성 가능한 시퀀스 최대값 [MINVALUE n | NOMINVALUE] -- 시퀀스의 최소값을 설정 : CYCLE일 경우 새로 시작되는 값과 감소하는 시퀀스일 경우 최소값 [CYCLE | NOCYCLE] -- 시퀀스를 순화 사용할지를 설정 [CATCHE n | NOCATCHE] -- 시퀀스의 속도를 개선하기위해 캐싱여부 지정*/ cre.. 2018. 3. 29.
Role 역할 역할 주기권한 주기 권한을 묶어서 이름을 준다. -> 역할이 됨. 권한을 하나하나 주기 보다 묶어진 역할을 하나만 주면 됨. DB에서 권한은 두가지SYSTEM : OBJECT를 소유하고 있는 관리자.OBJECT 2018. 3. 28.
PROCEDURE /*PL/ SQL : 오라클에서 제공하는 프로그래밍 언어일반 프로그래밍 언어적인 요소를 다 가지고 있고데이터베이스 업무를 처리하기 위해 최적화된 언어 **기본구조**1. 선언부(Declare) : 모든 변수나 상수를 선언하는 부분2. 실행부(Excutable) : begin/end 제어문, 반복문, 함수정의 등의 로직을 기술하는 부분3. 예외처리부(exception) : 실행도중에 에러 발생시 해결하기 위한 명령들을 기술하는 부분declare, begin, exception 키워드들은 ; 을 붙이지 않는다.4. 익명블록 : 주소 일회성으로 사용할 경우 사용5. 저장블록 : 서버에 저장해놓고 주기적으로 사용할 경우 사용 **변수의 생성 규칙1. 반드시 문자로 생성해야 한다.2. 문자나 숫자, 특수문자를 포.. 2018. 3. 27.