본문 바로가기
웹, 게임 제작

생활코딩_데이터베이스 이론 3강 분량 요약

by startSmall 2020. 11. 27.

-데이터베이스: 정보를 관리하는 전문 애플리케이션.

 

-파일과 데이터베이스의 차이.

파일은 기본적이고 원시적인 형태의 데이터 관리수단.

장점은 어느시스템에서나 쓸수있고, 무언가를 설치할 필요없이 심플하다.

데이터베이스는 공부하고, 무언가를 설치해야할 필요가 있다.

장점은 안전하다. 나의 정보를 무단으로 보거나, 시스템이 고장났을때 백업기능도 있다. 인덱스(색인)기능으로 빠르다. SQL같은 프로그램을 이용해서 프로그래밍적 제어가 가능하다.

 

-보편적이고 성공적인 데이터베이스 모델은 관계형 데이터베이스다. 

제품으로는 MySQL, MSSQL, Oracle등이 있다. 작동방법은 같으며, MariaDB는 특히 같으면서도 발전속도가 빠르다.

MySQL은 오픈소스로, 웹의 성장과 함께 성장해왔다. 

 

-SQL은 무엇인가?

Structured(표와 같이 구조화된 정보들) Query(질의하다) Language(언어)

클라이언트에게 서버가 표로된 정보로 응답할 수 있도록 되어있는 언어다.

웹브라우저->웹서버(PHP문이 있으면 PHP에게 위임)->PHP(SQL문이 있으면 MySQL에게 요청)->MySQL

 

-MySQL Client

MySQL monitor MySQL 설치 시 기본으로 설치되는 클라이언트. MySQL서버가 어떻게 동작하는지 투명하게 보여준다.

 

-실행방법

윈도우키+r, cmd 엔터하면 명령프롬프트 실행

cd C:\Bitnami\wampstack-8.0.0-0\mysql\bin

C:\Bitnami\wampstack-8.0.0-0\mysql\bin>cd /

C:\>cd C:\Bitnami\wampstack-8.0.0-0\mysql\bin

C:\Bitnami\wampstack-8.0.0-0\mysql\bin>mysql -hlocalhost -uroot -p

(mysql: mysql 에 접속/ -hlocalhost: -h뒤에 따라오는 것이 mysql의 주소. localhost: mysql모니터와 서버가 설치된 컴퓨터.만약 MySQL서버가 다른 컴퓨터에 설치되어있다면 -h대신에 웹주소를 써준다. / -u: -u뒤에 따라오는것이 비밀번호 / -p: 비밀번호 입력하기)

Enter password: ******(bitnami 설치할 때 입력한 비밀번호 6자리)

 

(하나의 웹사이트에 하나의 데이터베이스가 필요하기 때문에 데이터베이스 새로 생성하기)

CREATE DATABASE testproject CHARACTER SET utf8 COLLATE utf8_general_ci;

show databases; 를 입력하여 데이터베이스가 새로 생성되었는지 확인가능.

기본으로 있던 데이터베이스 외에 testproject 데이터베이스가 추가되었다

use testproject; 테스트프로젝트 데이터베이스를 사용하겠다는 의미.

 

 

-표 만들기

CREATE TABLE `topic` (
`id` int(11) NOT NULL AUTO_INCREMENT, 
`title` varchar(100) NOT NULL,
`description` text NOT NULL,
`author` varchar(30) NOT NULL,
`created` datetime NOT NULL,
PRIMARY KEY(id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

 

-데이터 추가

INSERT INTO `topic` (title, description, author, created) VALUES('about javascript', 'javascript is~', 'me', '2020-12-2 12:47:30');

SELECT * FROM topic; (확인)

 

 

-3번행만 보기

select id, title, author, created from topic WHERE id=3;

 

-id로 내림차순 정렬하기

select id, title, author, created from topic ORDER BY id DESC;

 

-author로 내림차순 정렬하기

select id, title, author, created from topic ORDER BY author DESC;

 

댓글