TIL 2021-01-22 (SQL)

nyongho·2021년 1월 28일
0

DATABASE

목록 보기
1/2
post-thumbnail

SQL


TIL List

  • SQL 의 정의

  • MySQL 을 통해 데이터베이스, 테이블을 만들어보기


1) SQL?

SQL (Structured Query Language) 은 관계형 데이터베이스 관리 시스템(RDBMS)의 데이터를 관리하기 위해 설계된 특수 목적의 프로그래밍 언어이다.


2) SQL 을 배워야 하는 목적

지금까지 공부해왔던 목적은 모두 웹 페이지를 만들기 위한 것 임을 다시 한 번 상기하면서 오랜만에 TIL 을 시작하겠다.

일단 나는 지금까지의 학습을 통해 기본적인 웹 페이지를 구성하고, 기능을 구현하는 연습을 해왔다.

하지만 기존에 구현했던 페이지들은 아무리 알록달록하고 화려하더라도 F5 (새로고침) 버튼을 누르면 그 데이터가 바로 사라진다는 단점이 있었다.

명백히 기능만 구현 했을 뿐 이지 그 데이터를 저장하는 것은 아직 구현하지 못한 것이다.

이번 SQL 을 배워야 하는 목적은 이러한 데이터를 저장하고 관리하는 방법을 알기 위함에 있다.


3) SQL 설치 및 접속 방법

SQL 이란 친구가 데이터베이스를 관리해주는 놈인건 알겠다. 이제 친구가 어떻게 생겼고, 어떻게 동작하는지를 알기 위해 직접 컴퓨터에 설치해보자.

3-1. MySQL 설치

맥 OS 라면 다음 명령어를 통해 MYSQL 을 설치하도록 하자.

brew install mysql


3-2. MySQL 접속

그리고 다음 명령어를 통해 나의 MySQL 에 접근할 수 있다.

mysql -u root -p

여기서 -u root 유저 이름은 root 라는 뜻이고 뒤에 -p패스워드 를 의미한다.

처음 시작할 때 기본적으로 유저 이름은 root 로 지정되고 패스워드는 수정하지 않은 상태이므로

패스워드를 입력하지 않은 채 그대로 엔터를 누르면 MySQL 에 접속이 가능하다.

만약 본인이 패스워드를 변경하고 싶다면 mysql 에 접근한 상태에서 다음의 명령어를 입력하면 된다.

mysql> ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '패스워드';

❗️ 아, 그리고 한 가지 주의할 점이 있는데 명령어를 정상적으로 실행하기 위해서는 무조건 뒤에 ; (세미 콜론) 을 찍어줘야 한다.


3-3. 간단하게 MySQL 을 다뤄보자.

3-2. 과정을 통해 정상적으로 MySQL 에 접속했다면 기본적으로 MySQL 을 다루기 위해 우리가 알아야 할 것에 대해 알아보자.

우리는 데이터베이스를 관리할 것이다. 그러므로 일단 먼저 특정 데이터베이스를 생성할 수 있어야 한다.

만약 practice 라는 이름의 데이터베이스를 만들고 싶다면 다음과 같이 명령어를 입력하면 된다.

mysql> CREATE DATABASE practice

데이터베이스를 성공적으로 생성했다면 이제 MySQL 에게 practice 라는 데이터베이스를 사용할 것이라고 알려줘야 한다.

명령어는 다음과 같다.

mysql> USE practice

우리는 위 과정을 통해 practice 라는 데이터베이스를 만들고, practice 라는 데이터베이스를 사용할 것이라고 MySQL 에게 말해줬다.

여기서 그 다음 알아야 할 개념인 TABLE 이 등장한다.

일단 상상만으로는 이해가 쉽지 않으니 생김새가 가장 유사한 엑셀표를 가져와보자.

  • 위 사진에서 각각을 구분짓는 A,B,C 를 Column (컬럼) or Field (필드) 라고 한다.

  • 각 컬럼안의 한국인, 미국인 등을 Row (로우) or Record (레코드) 라고 한다.

  • 그리고 위 컬럼과 로우를 아우르는 표를 Table (테이블) 이라고 한다.

간단하게 말해서 테이블을 만드는 목적은 각각의 데이터를 구분짓기 위함 이라고 할 수 있겠다.

만약 Korean 이라는 테이블을 생성하고 싶다면 다음과 같이 입력하면 된다.

mysql> CREATE Korean

그리고 해당 테이블에 어떤 값들 (컬럼, 로우) 이 있는지 확인하고 싶다면 다음과 같이 입력하면 된다.

mysql> DESCRIBE Korean

위 명령어는 줄여서 다음과 같이 입력해도 똑같이 작동된다.

mysql> DESC Korean

그 외에 테이블의 CRUD 에 관련한 명령어는 다음의 블로그를 참조하면 된다.

테이블 CRUD 참조 블로그

profile
두 줄 소개

0개의 댓글