cmd에서 MySQL 실행하는 방법

mySQL의 bin폴더로 가서 mysql -u root -p 명령어를 입력해준다
( 이때 -u와 -p사이에는 localhost 와 -P3306이 생략되어 있다
cf. mySQL은 항상 3306번 포트를 listening한다 )
이후 비밀번호를 입력하면 mysql이 실행된다.


MySQL 주요 구문

MySQL에서 데이터베이스에 대한 작업 명령은 SQL 구문을 이용하여 처리된다.
구문뒤에는 항상 세미콜론(;)을 붙인다.
MySQL 구문은 대소문자를 구분하지 않으나 통일하여 적는게 좋다.

데이터베이스 생성
CREATE DATABASE 데이터베이스 이름;

데이터베이스 조회
SHOW DATABASES;
cf. information_schema, mysql, performance_schema, sys 는 기본 데이터베이스

데이터베이스 선택
USE 데이터베이스이름;

데이터베이스 삭제
DROP DATABASE 데이터베이스이름;

테이블 생성
CREATE TABLE 테이블 이름
( 필드이름1 필드타입1 ,
필드이름2 필드타입2,
... );

테이블 조회
SHOW TABLES;

테이블 삭제
DROP TABLE 테이블 이름;

값 채우기
INSERT INTO 테이블 이름 (필드) VALUES (값);

값 조회
SELECT * FROM 테이블 이름;

제약조건
CREATE TABLE 명령어를 사용할때, 필드에 제약조건을 설정할 수 있음
Ex. NOT NULL / UNIQUE / PRIMARY KEY(NOT NULL + UNIQUE)
/ FOREIGN KEY / DEFAULT / AUTO_INCREMENT

값 수정
UPDATE 테이블 이름 SET 필드이름 = 값, ... WHERE 필드이름 = 값;
cf. WHERE 안쓰면 테이블 전체의 값이 변경됨

행 삭제
DELETE FROM 테이블 이름 WHERE 필드이름 = 값;
cf. WHERE 안쓰면 테이블 전체의 값이 삭제됨

예제 - TWICE 데이터베이스에 song 테이블 생성)

mysql> CREATE DATABASE TWICE;
mysql> use TWICE;

mysql> CREATE TABLE song(
    -> ID INT NOT NULL AUTO_INCREMENT, 
    -> name VARCHAR(30), 
    -> year INT, 
    -> PRIMARY KEY(ID));  // auto_increment 를 사용하려면 key로 설정해줘야!

mysql> INSERT INTO song (name,year) VALUES
    -> ('dance the night away',2017),
    -> ('fancy',2019),
    -> ('feel special',2019),
    -> ('cry for me',2020),
    -> ('Lovesick Girls',2020);

mysql> select * from song;
+----+-------------------------+------+
| ID | name                    | year |
+----+-------------------------+------+
|  1 | dance the night away    | 2017 |
|  2 | fancy                   | 2019 |
|  3 | feel special            | 2019 |
|  4 | cry for me              | 2020 |
|  5 | Lovesick Girls        ****  | 2020 |
+----+-------------------------+------+

mysql> UPDATE song SET year=2018 where name='dance the night away';
mysql> DELETE FROM song WHERE name = 'Lovesick Girls';

mysql> select * from song;
+----+----------------------+------+
| ID | name                 | year |
+----+----------------------+------+
|  1 | dance the night away | 2018 |
|  2 | fancy                | 2019 |
|  3 | feel special         | 2019 |
|  4 | cry for me           | 2020 |
+----+----------------------+------+
profile
공부한 것들을 정리하기 위한 용도입니다.

0개의 댓글