데이터베이스

데이터베이스/MySQL

테이블 구성

CREATE 문에서 테이블 제작CREATE TABLE 테이블이름 ( { 속성이름 데이터타입 [NOT NULL | UNIQUE | DEFAULT 기본값 | CHECK 체크조건] } [PRIMARY KEY 속성이름(들)] {[FOREIGN KEY 속성이름 REFERENCES 테이블이름(속성이름)] [ON DELETE [CASCADE┃SET NULL] } )제약 조건NOT NULL : 해당 필드는 NULL 값을 저장할 수 없게 됩니다.UNIQUE : 해당 필드는 서로 다른 값을 가져야만 합니다.PRIMARY KEY : 해당 필드가 NOT NULL과 UNIQUE 제약 조건의 특징을 모두 가지게 됩니다.FOREIGN KEY : 하나의 테이블을 다른 테이블에 의존하게 만듭니다.DEFAULT..

데이터베이스/MySQL

데이터 조작어 (검색)

구성요소기본 문법SELECT [ALL┃DISTINCT] 속성이름(들) // 찾는다.FROM 테이블이름(들) [테이블 별명] // 에서[WHERE 검색조건(들)] // 조건에 맞는[GROUP BY 속성이름] // 으로 묶여있는[HAVING 검색조건(들)] // 에서 조건에 맞는[ORDER BY 속성이름 [ASC┃DESC]] // 오름차순/내림차순 정렬---------------------------------------------------------------[ ] : 대괄호 안의 SQL 예약어들은 선택적으로 사용한다.| : 선택 가능한 문법들 중 한 개를 사용할 수 있다..

데이터베이스/MySQL

데이터 조작어 (DML)

Data Manipulation Language (DML)데이터 검색 및 수정데이터 삽입 : INSERT INTO열 이름과 함께 값 삽입INSERT INTO (열이름1, 열이름2...) VALUES(값1, 값2...)SQL 문장 결과 삽입 (대량 삽입)다른 테이블 데이터 가져오기 가능SELECT 문의 열의 갯수와 INSERT 할 테이블의 열의 갯수는 동일해야 함INSERT INTO (열이름1, 열이름2...) SELECT 열이름1, 열이름2 ... FROM WHERE ;AUTO_INCREMENT데이터 수정 : UPDATE기존 입력 값 변경UPDATE SET 열1 = 값1, 열2 = 값2, ... WHERE 조건절;데이터 삭제 : DE..

데이터베이스/MySQL

CMD 명령어

MySQL 접속 (mysql)$> mysql -u root -p$> mysql -u -p$> Enter password: (계정의 비밀번호)원하는 이름으로 database 생성 (CREATE)mysql> CREATE DATABASE (생성할 database 이름);현재 서버 database 출력 (SHOW)mysql> SHOW DATABASES;원하는 이름의 database 접속 (USE)mysql> USE (접속할 database 이름)(성공 시 아래와 같이 뜬다)Database changed기존의 database table을 다른 database table로 이동 (RENAME TABLE ... TO ~)(주의) .table을 뒤에 붙이는 걸 잊지 말자.mysql> RENAME TABLE (기존의 ..

데이터베이스/MongoDB

인덱스(Index)

Index란🔖 자주 조회되는 필드를 따로 저장해서 조회 및 정렬 시의 속도를 빠르게 하는 기법MongoDB는 Collection Scan(컬렉션 데이터를 하나하나 조회하는 방식)으로 데이터를 찾는다.이를 보안하여 Document Field들에 Index를 걸면, 데이터에 설정된 키 값을 가지고 document들을 가르키는 포인터값으로 이뤄진 B-Tree 구조를 만든다.B-Tree : Balanced Binary search Tree인덱스는 일반 Field 뿐만 아닌, 객체 값을 가지는 Field 내부 속성에도 지정 가능ex) { name: {first: ‘Zero’, last: ‘Cho’}} → createIndex({ ‘name.last’:1});Index의 종류기본 인덱스 : _id기본적으로 Mon..

데이터베이스/MongoDB

JSON & BSON

개요Mongo는 명시적으론 JSON 형태로 데이터를 보여주고, 저장한다.검색 기능을 사용할 때도 JSON 문법에 맞게 입력해준다.하지만 실제 MongoDB에서는 데이터를 BSON 형태로 저장하여 사용하고 있다.JSON 형식💡 JSON (JavaScript Object Notation) Javascript 언어의 일부로 정의되어있는 형식 2013년에 공식화key와 value의 값예제{ "_id": "10009999", "listing_url": "", "name": "Horto flat with small garden", "summary": "One bedroom + sofa-bed ...", "cancellation_policy": "flexible", "last_scraped": { "$date":..

데이터베이스/MongoDB

보안 설정 & 커넥션 생성

MongoDB 보안 설정어드민 권한 설정 방법mongod가 실행되고 있는 상태에서 mongosh에 접속하여 아래 구문 입력$ use admin$ db.createUser({ user: '이름'. pwd: '비밀번호', roles: ['root']});mongod.exe 콘솔을 종료한 후 cmd에서mongod --auth명령어로 접속. (--auth는 로그인이 필요하다는 의미.)mongo를 입력한 콘솔도 종료한 후mongo admin -u 이름 -p 비밀번호로 접속.MongoDB Commection 생성컴패스 접속 (mongod 실행된 상태 진행)Fill in connection fields individually 클릭 후 보안 상태에 connect 진행

데이터베이스/MongoDB

조회(find), query연산자

Mock-Up Sample Data[ { "title": "article01", "content": "content01", "writer": "Velopert", "likes": 0, "comments": [] }, { "title": "article02", "content": "content02", "writer": "Alpha", "likes": 23, "comments": [ { "name": "Bravo", "message": "Hey Man!" } ] }, { "title": "article03", "content": "content03", "writer": "Bravo..

MellowHoney
'데이터베이스' 카테고리의 글 목록