DataBase
MySQL
종퐁이
2024. 10. 8. 01:03
- SQL
- S : Structured - 구조적
- Q : Query - 질의
- L : Language - 언어
input | output |
Create Update Delete |
Read |
[ MySQL 실행방법 ]
1. cd /usr/local/mysql/bin
2 ./mysql -uroot -p
3. 비밀번호 입력
[ MySQL 구조 ]
- table : 데이터의 기본 저장
- database, schema : 연관된 표의 데이터들을 grouping 한 폴더
- datavase server : schema들이 저장되는 곳
CREATE DATABASE 데이터베이스이름(...) : 데이터베이스 생성
DROP DATABASE 삭제할데이터베이스이름 : 생상한 데이버베이스 삭제
SHOW DATAVBASES; : 생성한 데이터베이스 리스트를 보여줌
SHOW TABLES; : 선택된 데이터베이스 내에 있는 모든 테이블의 목록을 보여줍니다. 이 명령어를 실행하기 전에 사용할
데이터베이스를 선택해야 합니다.
USE 데이터베이스이름;
SHOW TABLES;
< 테이블 생성 >
mysql> CREATE TABLE topic(
-> id INT(11) NOT NULL AUTO_INCREMENT,
-> title VARCHAR(100) NOT NULL,
-> description TEXT NULL,
-> created DATETIME NOT NULL,
-> author VARCHAR(30) NULL,
-> profile VARCHAR(100) NULL,
-> PRIMARY KEY(id));
- NOT NULL : 값을 비워둘 수 없음을 의미
- AUTO_INCREMENT : 자동으로 값을 1씩 증가
- NULL : 값을 비워두는걸 허용
DESC 데이블이름; : 테이블의 구조(스키마)를 보여준다.
INSERT INTO table_name (column1, column2, column3, ...) VALUES (value1, value2, value3, ...);
: 테이블에 새로운 데이터를 추가하는데 사용되는 명령어
- 테이블이름 : 데이터를 삽입할 테이블의 이름
- colum1,colum2... : 값을 삽입할 열의 이름
- value1,value2... : 각 열에 삽입할 값
SELECT * FROM 테이블이름; : 특정 테이블의 모든 열과 모든 행을 조회하는데 사용되는 명령어
SELECT name,email FROM 테이블이름; : 모든 열 대신 특정 열만 조회하고 싶다면, 열 이름을 명시할 수 있다.
SELECT * FROM 테이블이름 WHERE age > 25; : 이 경우 나이가 25세 이상인 사용자만 조회된다.
SELECT * FROM <table1> LEFT JOIN <table2> ON <table1>.<val1> = <table2>.<val2>;
: 두 테이블을 연갈할 때 사용되는 명령어, 왼쪽 테이블의 모든 행을 선택하고, 오른쪽 테이블에서 일치하는 행이 있을 경우에만
그 데이터를 표한다. 오른쪽 테이블에 일치하는 데이터가 없으면, 그 열은 NULL로 표시된다.