DATABASE 10

23-09-09 jetbrains datagrip에 mongodb cluster 연결하기

나는 Spring data JPA를 사용할 때 직접 쿼리를 생각하고 생각한 쿼리대로 코드를 작성했었다. MEVN 프로젝트중 MongoDB는 첫 사용을 하는것이라 코드를 작성하면서 자꾸 헷갈릴때가 있었다. datagrip에 직접 쿼리를 날리고 백엔드 코드를 작성하면서 빠르게 MongoDB를 익혀야겠다는 생각에 이 글을 작성한다. datagrip에 mongodb cluster를 연결하는방법에 대해 구글링 해봤지만 모두 local에서 연결하는 법만 나왔고 그냥 내가 알아서 해봐야겠다는 생각에 직접 해봤는데 정말 간단했다. (사실 이렇게 간단한걸 여러시도끝에 해낸 내가 바보같긴함) 연결방법은 아래와 같다. * 아래 방법은 mongodb 클러스터 생성, datagrip설치를 생략하고 진행 1. mongodb 로그..

DATABASE 2023.09.09

23-02-09 데이터 베이스

※ 데이터 무결성 1. 데이터 무결성 제약조건 개념 1) 개념 - 유효성검증 - 데이터의 정확성과 일관성을 보장 - 데이터의 정확성을 유지하여 다양한 종류의 업무규칙 고려한 예 2) 장점 - 테이블 생성시 무결성 제약조건을 정의 가능 - 테이블에 대해 정의, 데이터 딕셔너리에 저장되므로 응용프로그램에서 입력된 모든 데이터에 대해 동일하게 적용 - 제약조건을 활성화, 비활성화 할 수 있는 융통성 3) 종류 무결성 제약 조건 설명 NOT NULL 열이 NULL을 포함할 수 없음 고유키 (UK) 테이블의 모든 행에서 고유한 값을 갖는 열 또는 열조합을 지정 기본키 (PK) 해당 칼럼값은 반드시 존재해야하며 유일해야함 UNIQUE, NOT NULL 제약조건을 결합한 상태 참조키 (외래키/ FK) 한 열과 참조된..

DATABASE 2023.02.09

23-02-08 데이터 베이스

※ 테이블 예제) 연락처 정보를 저장하기 위한 주소록 테이블을 생성 CREATE TABLE address (id NUMBER(3), name VARCHAR2(50), addr VARCHAR2(100), phone VARCHAR2(30), email VARCHAR2(100)); 2.DEFAULT 2-1) 기능 - 칼럼의 입력값이 생략될 경우에 NULL 대신에 입력되는 기본값을 지정하기 위한 기능 - 기본값 : 리터럴값, 표현식, SQL함수, SYSDATE, USER사용 - 칼럼이나 의사컬럼(NEXTVAL, CURRVAL)은 사용할 수 없음 2-2) DESR[RIBE]명령어 - 테이블의 생성 여부와 테이블의 구조를 확인하기 위한 명령어 - 2-3) 서브쿼리를 이용한 테이블 생성 -서브쿼리의 출력결과가 테이블..

DATABASE 2023.02.08

23-02-07(1) 데이터베이스

INSERT FIRST WHEN HEIGHT > 170 THEN INTO HEIGHT_INFO VALUES(STUDNO, NAME, HEIGHT) WHEN WEIGHT > 70 THEN INTO WEIGHT_INFO VALUES(STUDNO, NAME, WEIGHT) SELECT * FROM STUDENT WHERE GRADE >= 2; SELECT * FROM HEIGHT_INFO; SELECT * FROM WEIGHT_INFO; ※ 데이터 조작어 1. Conditional INSERT ALL 예제) 학생테이블에서 2학년이상의 학생을 검색하여 -- 학생테이블에서2학년이상의학생을검색하여height_info 테이블에는키가170보다큰학생의학번, 이름, 키를입력하고 -- weight_info 테이블에는몸무게가..

DATABASE 2023.02.07

23-02-06(1) 데이터베이스 (

1. 다중 행 서브쿼리 - 서브쿼리에서 반환되는 결과 행이 하나 이상일 때 사용하는 서브쿼리 - 메인쿼리의 where절에서 서브쿼리의 결과와 비교할 경우에는 다중행 비교 연산자를 사용하여 비교 - 다중행 비교연산자 : IN, ANY, SOME, ALL, EXISTS - 다중행 비교연산자는 단일 행 비교 연산자와 결합하여 사용가능 IN은 저번에 배웠던 IN 연산자 ANY(하나), ALL(모든 것)을 집중적으로 보자 1) IN 연산자 - 메인쿼리의 비교조건에서 서브쿼리의 출력 결과와 하나라도 일치하면 메인쿼리 조건절이 참이 되는 연산자 - '=' 연산자를 OR로 연결한 것과 같은 의미 예제 ) 정보미디어학부(부서번호:100)에 소속된 모든 학생의 학번, 이름, 학과번호 출력 SELECT NAME, GRADE..

DATABASE 2023.02.06

23-02-03(1) 데이터 베이스(JOIN, 단일행 서브쿼리)

1. ANSI JOIN ※ INNER JOIN(내부조인, 교집합) 1) NATURAL JOIN (자연조인) 자연조인의 사용예) SELECT STUDNO, NAME, DEPTNO, DNAME FROM STUDENT NATURAL JOIN DEPARTMENT; -- 자연조인 사용 2) USING SELECT STUDNO, NAME, DEPTNO, DNAME FROM STUDENT JOIN DEPARTMENT USING(DEPTNO); 3) ON (?와 ?가 같을때) SELECT STUDNO, NAME, STUDENT.DEPTNO, DNAME FROM STUDENT JOIN DEPARTMENT ON STUDENT.DEPTNO = DEPARTMENT.DEPTNO WHERE NAME = '전인하'; ※참고 앞에서..

DATABASE 2023.02.03