본문 바로가기

데이터베이스11

[MongoDB] update()와 기존 데이터 수정하기 이번엔 CRUD에서 U(Update)를 담당하고 있는 업데이트와 관련한 함수를 알아보겠습니다. 지난 포스트에서 find()를 실습하며 만들어두었던 데이터베이스와 컬렉션을 이용하겠습니다. 1. update() db.컬렉션명.update({쿼리}, {업데이트값}, {옵션}) 도큐먼트는 update() 함수를 통해서 내용을 변경할 수 있습니다. 각 파라미터에 대해서 설명을 하겠습니다. 쿼리는 find()에서 검색을 위해 조건을 넣던 쿼리와 동일합니다. 이 쿼리로 변경할 도큐먼트를 찾습니다. 업데이트 값은 수정할 값을 적는 파라미터입니다. 옵션에는 upsert(찾는 값이 없으면 새로 추가), multi(여러 도큐먼트 변경) 등이 있습니다. 현재 다음과 같은 컬렉션이 있습니다. 여기에서 이름이 ed인 도큐먼트를 .. 2022. 2. 7.
[MongoDB] 데이터베이스, 컬렉션 몽고디비에서 데이터베이스와 컬렉션을 만들고 이용하는 방법을 알아보겠습니다. 1. 데이터베이스 생성하기 시작하기 앞서 지금 어떤 데이터베이스가 있는지 알아보겠습니다. 현재 작업중인 데이터베이스를 확인하는 명령어는 db명령입니다. db 현재는 test라는 데이터베이스에서 작업중입니다. 실습을 위한 데이터베이스를 하나 만들어보겠습니다. 몽고디비에서 데이터베이스를 생성하는 명령어는 use입니다. use 데이터베이스명 use가 작업할 데이터베이스를 선택하는 일도 하지만, 지정한 데이터베이스명에 일치하는 데이터베이스가 없을 경우, 데이터베이스를 생성하기도 합니다. practice라는 이름의 db를 생성하고 선택까지 되었습니다. 현재 존재하는 데이터베이스를 확인하는 명령은 show dbs입니다. db가 생성되어 있더.. 2022. 1. 28.
[MongoDB] 몽고DB 지난 포스팅까지는 SQL의 대표주자인 오픈소스 MySQL과 MySQL의 SQL 문법을 알아보았습니다. 이번에 소개드릴 데이터베이스는 몽고DB입니다. 왜 SQL을 배웠는데, 다른 것을 다시 배우는 지부터, 몽고 디비가 무엇인지까지도, 이번 포스트에서 소개해드리겠습니다. 1. NoSQL NoSQL은 이름에서 느낄 수 있듯이 SQL을 사용하지 않는 데이터베이스입니다. 사용하지 않는다고 했지만 이는 정확하지 않은 이야기이고, SQL을 사용할 수는 있으므로 No를 Not only라고도 부르기도 합니다. 그렇다면 SQL문을 사용하지 않았을 때의 장점은 무엇이길래 NoSQL이 등장하게 되었을까요? NoSQL 데이터베이스는 기존의 관계형 데이터베이스에 비해 융통성있고, 데이터를 다루는데 개선된 매커니즘을 다루고 있습니.. 2022. 1. 27.
[MySQL] 데이터 조작문 DML - UNION, SUB QUERY 데이터 조작문의 마지막 포스트입니다. 마지막으로 다룰 데이터 조작문 명령은 UNION과 SUB QUERY입니다. 테이블은 지난번 포스트와 동일한 두 개의 테이블을 이용하겠습니다. 1. UNION UNION 명령은 여러 테이블의 SELECT 명령 결과를 하나의 테이블로 표현할 때 이용합니다. 유니온을 사용할 땐 몇 가지 규칙이 있는데 다음과 같습니다. SELECT 구문의 순서는 상관하지 않는다. 각 SELECT 구문은 표현식이 같아야한다.(컬럼 수 등이 일치) 중복된 결과는 하나만 표시한다. ORDER BY 구문은 한 번만 사용한다. 컬럼타입은 반환 가능한 타입만 이용한다. UNION 구문은 다음과 같이 사용합니다. SELECT 구문 UNION SELECT 구문; (계속해서 가능) 본 예제와 같이 UNIO.. 2022. 1. 23.
[MySQL] 데이터 조작문 DML 지난 포스트에서는 데이터베이스와, 테이블을 만드는 데이터 정의문에 대해 알아보았었습니다. 이번 포스트에서는 데이터의 검색, 삽입, 수정, 삭제 등의 조작을 하는 데이터 조작문에 대해 다뤄보겠습니다. 테이블에 대한 실습은 데이터 정의문에서 만들었던 테이블을 가지고 계속해서 실습진행하겠습니다. 1.INSERT INTO INSERT INTO문은 테이블에 레코드(행, row)를 삽입하는 명령입니다. INSERT INTO문은 두가지 방식으로 작성할 수 있습니다. 주의할 점은 컬럼명과 값 타입 등이 일치해야 오류 없이 레코드가 삽입됩니다. INSERT INTO 테이블명 (컬럼명, ...) VALUES (값, ...); INSERT INTO 테이블명 VALUES (값, ...); 레코드가 제대로 삽입되었는지는 SEL.. 2022. 1. 20.
[MySQL] 데이터 정의문 DDL 본격적으로 MySQL의 SQL문을 배워보도록 하겠습니다. 첫번째 순서로는 데이터 정의문에 대한 내용입니다. 명령어 실습은 윈도우 명령 프롬프트 상에서 진행되었습니다. 1. CREATE DATABASE/CREATE SCHEMA CREATE DATABASE는 데이터베이스를 생성하는 명령입니다. MySQL에서는 데이터베이스를 스키마라고 하기 때문에 CREATE SCHEMA로도 데이터베이스를 생성할 수 있습니다. CREATE DATABASE 데이터베이스명; CREATE SCHEMA 데이터베이스명; 명령어 입력후 Query OK라는 문구가 나오면 데이터베이스 생성에 성공한 것 입니다. 2. SHOW DATABASES 현재 존재하는 데이터베이스들을 확인할 수 있는 명령입니다. SHOW DATABASES; 3. US.. 2022. 1. 20.
300x250