[MySQL] Database와 Table 기초

Main·2024년 8월 24일
0

MySQL

목록 보기
2/13
post-thumbnail

Database

MySQL에서 데이터베이스(database)는 데이터를 저장하고 관리하는 기본 단위입니다. 각 데이터베이스는 여러 테이블을 포함할 수 있으며, 각 테이블에는 데이터를 저장하는 여러 열(column)과 행(row)이 포함됩니다. 여러 개의 데이터베이스를 생성하여 서로 다른 데이터를 분리해 관리할 수 있습니다.

Database 확인하기

SHOW 명령어는 그 뒤에 오는 대상(예: 데이터베이스, 테이블 등)을 표시하는 역할을 합니다. 현재 서버에 존재하는 모든 데이터베이스를 확인하려면 SHOW DATABASES; 명령을 사용합니다.

SHOW DATABASES;

이 명령을 실행하면 서버에 존재하는 모든 데이터베이스 목록이 출력됩니다.

SQL 문 뒤에는 항상 세미콜론(;)을 붙여야 합니다.
show_db.PNG

Database 생성하기

새로운 데이터베이스를 생성하려면 CREATE DATABASE 명령어를 사용합니다.

CREATE DATABASE test;

이 명령을 실행한 후 다시 SHOW DATABASES; 명령을 입력하면 새로 생성된 test 데이터베이스가 목록에 추가된 것을 확인할 수 있습니다.

SHOW DATABASES;

create_db.PNG

Database 선택하기

데이터베이스를 선택하려면 USE 명령어를 사용합니다. 선택된 데이터베이스 내의 테이블에 접근하려면 먼저 해당 데이터베이스를 선택해야 합니다.

USE test;

이 명령을 실행하면 test 데이터베이스가 활성화되며, 이후의 SQL 명령은 이 데이터베이스 내에서 실행됩니다.

Database 삭제하기

더 이상 필요하지 않은 데이터베이스를 삭제하려면 DROP DATABASE 명령어를 사용합니다. 이 명령은 데이터베이스와 그 안에 있는 모든 테이블을 포함한 모든 데이터를 삭제하므로 주의해서 사용해야 합니다.

DROP DATABASE test;

이 명령을 실행한 후 SHOW DATABASES; 명령을 사용하면 test 데이터베이스가 목록에서 삭제된 것을 확인할 수 있습니다.

SHOW DATABASES;

delete_db.PNG


Table

테이블은 데이터베이스 내에서 데이터를 저장하는 기본 단위이며, 여러 열(column)과 행(row)으로 구성됩니다. 각 열은 특정 데이터 타입을 가지며, 특정 제약 조건을 설정할 수 있습니다.

Table 확인하기

현재 선택된 데이터베이스에 존재하는 모든 테이블을 확인하려면 SHOW TABLES; 명령을 사용합니다.

SHOW TABLES;

이 명령을 실행하면 현재 데이터베이스에 존재하는 모든 테이블의 목록이 출력됩니다.

show_table

Table 생성하기

새로운 테이블을 생성하려면 CREATE TABLE 명령을 사용합니다.

CREATE TABLE 테이블명 (열1 데이터타입 제약조건, 열2 데이터타입 제약조건, ...);

예를 들어, todos라는 이름의 테이블을 생성하려면 다음과 같이 작성할 수 있습니다.

CREATE TABLE todos (
    id INT PRIMARY KEY,
    task VARCHAR(50),
    isdone BOOLEAN DEFAULT false
);
  • id INT PRIMARY KEY:
    • id는 정수형(INT) 데이터를 저장하며, 테이블의 기본 키(PRIMARY KEY)로 설정됩니다. 기본 키는 테이블 내의 각 행을 고유하게 식별하며, 중복 값을 허용하지 않습니다.
  • task VARCHAR(50):
    • task는 최대 50자까지의 문자열을 저장할 수 있는 열입니다. VARCHAR는 가변 길이 문자열을 저장하는 데이터 타입입니다.
  • isdone BOOLEAN DEFAULT false:
    • isdone은 작업이 완료되었는지를 나타내는 열로, BOOLEAN 데이터 타입을 사용하며 기본값은 false로 설정됩니다.

현재 테이블을 출력해보면 todos 테이블이 추가된 것을 알 수 있습니다.

SHOW TABLES;

create_table.PNG

Table 데이터 추가하기

테이블에 데이터를 추가하려면 INSERT INTO 명령을 사용합니다.

INSERT INTO 테이블명 (열1, 열2, ...) VALUES (값1, 값2, ...);

예를 들어, todos 테이블에 두 개의 작업을 추가하려면 다음과 같이 작성할 수 있습니다.

INSERT INTO todos (id, task) VALUES (1, 'mysql 학습하기'), (2, '운동하기');

Table 데이터 조회하기

테이블의 데이터를 조회하려면 SELECT 명령을 사용합니다.

SELECT 열1, 열2, ... FROM 테이블명 WHERE 조건;

특정 열의 데이터를 조회하거나, 모든 열의 데이터를 조회할 수 있습니다.

-- id와 task 열을 가진 데이터만 조회합니다.
SELECT id, task FROM todos;

-- 모든 열을 가진 데이터를 조회합니다.
SELECT * FROM todos;

*는 모든 열을 의미하는 와일드 카드입니다.

select_table.PNG

Table 구조 확인하기

특정 테이블의 구조를 확인하려면 DESC(DESCRIBE) 명령을 사용합니다. 이 명령은 테이블의 열 이름, 데이터 타입, NULL 허용 여부, 키 설정, 기본값 등을 보여줍니다.

DESCRIBE todos;

desc_table

Table 데이터 수정하기

기존 테이블의 데이터를 수정하려면 UPDATE 명령을 사용합니다. 특정 조건을 만족하는 행을 선택하여 데이터를 변경할 수 있습니다.
UPDATE 테이블명 SET 열1 = 값1, 열2 = 값2 WHERE 조건;
예를 들어, todos 테이블에서 id가 1인 작업의 isdone 값을 true로 변경하려면 다음과 같이 작성할 수 있습니다.

UPDATE todos SET isdone = true WHERE id = 1;

update_data.PNG

Table 데이터 삭제하기

테이블에서 특정 데이터를 삭제하려면 DELETE FROM 명령을 사용합니다.

DELETE FROM 테이블명 WHERE 조건;

예를 들어, todos 테이블에서 id가 2인 데이터를 삭제하려면 다음과 같이 작성할 수 있습니다.

DELETE FROM todos WHERE id = 2;

delete_data.PNG

Table 제거하기

더 이상 필요하지 않은 테이블을 삭제하려면 DROP TABLE 명령을 사용합니다. 이 명령은 테이블과 그 안에 있는 모든 데이터를 삭제합니다.

DROP TABLE todos;

delete_table.PNG


정리

  • 데이터베이스는 MySQL에서 데이터 저장의 기본 단위입니다.
  • CREATE DATABASEDROP DATABASE로 데이터베이스를 생성 및 삭제할 수 있습니다.
  • 테이블은 데이터베이스 내에서 데이터를 저장하는 구조입니다.
  • CREATE TABLE, INSERT INTO, SELECT, DELETE FROM, DROP TABLE 등을 통해 테이블을 생성, 데이터 추가 및 조회, 데이터 삭제, 테이블 삭제 작업을 수행할 수 있습니다.
profile
함께 개선하는 프론트엔드 개발자

0개의 댓글