SQL
-
MySQL 제약 조건데이터베이스/MySQL 2020. 9. 25. 13:10
제약조건(constraint)이란? 데이터의 무결성을 위해 데이터 입력을 받을 때 실행하는 검사 규칙을 의미함. 제약 조건은 'CREATE' 문으로 테이블을 생성하거나 'ALTER'문으로 필드 추가시에도 사용 가능. 제약 조건 설정하는 방법 CREATE TABLE Test( Null_TEST INT NOT NULL, -- 제약조건으로 NOT NULL 설정 Unique_Test INT UNIQUE, -- 제약조건으로 UNIQUE 설정 Primary_Test INT PRIMARY KEY, -- 제약조건으로 PRIMARY KEY 설정 Default_Test INT DEFAULT '디폴트', -- 제약조건으로 DEFAULT 설정 Foreign_Test INT, -- FOREIGN KEY 테스트를 위한 필드 선언..
-
MySQL 자료형 - 숫자, 문자, 날짜, 시간데이터베이스/MySQL 2020. 9. 25. 02:34
MySQL의 자료형이란? 자바스크립트같은 동적인 언어는 변수를 선언할 때 별도의 자료형을 입력하지 않아도 된다. 하지만 'MySQL'은 자바처럼 테이블 내 필드값을 설정할 때 자료형을 꼭 기입해야 한다. 자료형은 크게 셋으로 나뉜다. 숫자타입 / 문자타입 / 날짜와 시간 타입이다. 숫자타입 (numeric types) 1. 정수 타입 (integer types) MySQL에선 다양한 정수형을 지원하므로 선택하여 사용할 수 있다. 타입 저장공간 음수 범위 양수 범위 TINYINT 1바이트 -128 127 SMALLINT 2바이트 -32768 32767 MEDIUMINT 3바이트 -8388608 8388607 INT 4바이트 -2147483648 2147483647 BIGINT 8바이트 -9223372036..
-
MySQL 기본 문법 - 레코드 선택하기데이터베이스/MySQL 2020. 9. 25. 01:59
SELECT란? SELECT는 테이블 안에 저장된 레코드를 선택할 수 있다. SELECT의 문법은 아래와 같다. SELECT 필드이름 FROM 테이블이름 [WHERE 조건] SELECT로 필드 이름을 선택하고, FROM으로 테이블의 이름을 선택해준다. 그럼 해당 테이블의 필드에 해당하는 레코드를 선택하게 된다. 추가로 WHERE 조건을 입력하면 해당 조건에 맞는 레코드를 찾아준다. SELECT의 실제 예시 위와 같은 표를 만들었다고 가정하자. (참고로 테이블명은 'Student'다.) SELECT * FROM Student; -- 해당 테이블에 해당하는 모든 레코드 선택 SELECT Name FROM Student; -- 'Student' 테이블의 'Name' 레코드 선택 SELECT Age FROM S..
-
MySQL 기본 문법 - 자료 갱신하기데이터베이스/MySQL 2020. 9. 25. 01:54
테이블 내에 있는 레코드를 갱신하기 위해서는 'UPDATE' 명령어를 사용하면 된다. UPDATE Student SET Age = 17; -- Student 테이블의 Age 필드의 모든 레코드를 17로 바꿈 UPDATE Student SET Age = 17 WHERE Name = "김철수"; -- Student 테이블에서 Name필드의 레코드가 '김철수'인 Age 필드의 모든 레코드를 17로 바꿈 'UPDATE' 명령어를 써주고 'SET'을 써서 필드의 레코드 값을 새로 설정해줄 수 있다. 'WHERE'를 써서 조건을 주지 않으면 'SET'에서 지정한 모든 필드의 레코드가 변경된다. 'WHERE'가 있을 경우에는 조건에 맞는 필드의 레코드만 변경이 된다. 위 코드로 보면 위 코드는 필드 내 모든 'Age..
-
MySQL 기본 문법 - 데이터베이스, 테이블, 레코드 삭제하기데이터베이스/MySQL 2020. 9. 25. 01:44
일반적으로 많은 프로그래밍언어에선 'DELETE'라는 명령어를 통해 데이터를 삭제해준다. MySQL에는 'DELETE' 뿐 아니라 'DROP' 이라는 명령어가 있다. 'DROP'과 'DELETE'의 차이는 뭘까? 가장 큰 차이는 'DROP'은 데이터베이스, 테이블과 같은 데이터의 구조를 삭제하는 것이다. 그리고 'DELETE'는 데이터 그 자체를 삭제하는 역할을 한다. 사용법을 보면 더 쉽게 알 수 있다. 1. DROP 예를 들어 코드를 통해 위와 같은 데이터 베이스와 테이블이 있다면 다음과 같은 방법으로 삭제해줄 수 있다. DROP DATABASE TestDb; -- 데이터 베이스 삭제 DROP TABLE Student; -- 데이터 베이스 내 테이블 삭제 위처럼 'DROP' + '삭제하고자 하는 데이..
-
MySQL 기본 문법 - 데이터베이스 수정하기데이터베이스/MySQL 2020. 9. 25. 01:19
데이터베이스 만들기에서 보았듯 데이터베이스를 수정할 때도 똑같은 경로로 데이터에 접근한다. 데이터베이스 안에 'USE' 명령어로 접속한 뒤에 수정해주면 된다. 수정할 때는 'ALTER' 명령어를 써준다. ALTER 명령어 설명 ADD 테이블에 필드를 추가한다. MODIFY 테이블에 있는 필드의 타입들을 변경가능하다. DROP 테이블에 있는 필드를 삭제한다. ALTER 명령어의 사용법 명령어의 사용법은 다음과 같다. CREATE DATABASE TestDb; -- 데이터 베이스 생성 USE TestDb; -- 데이터 베이스 선택 CREATE TABLE Student( -- 테이블 생성 Num INT AUTO_INCREMENT PRIMARY KEY NOT NULL, -- 숫자 / 정수형 / 자동 채움 / 고..
-
MySQL 기본 문법 - 데이터베이스만들기데이터베이스/MySQL 2020. 9. 24. 18:02
1. MySQL의 기본 구조 MySQL에서 데이터는 전부 데이터 안에 위치한 테이블로 다룬다. 그래서 데이터 베이스와 테이블을 만들고 가장 기초이자 처음에 하는 작업이다. MySQL에서 자료 구조를 보면 다음과 같다. 데이터 베이스별로 테이블을 여러 개 가질 수 있고 데이터는 각각의 테이블에 저장된다. 테이블은 기본적으로는 상하 구조가 아니라 수평적인 구조를 가지고 있지만, 데이터베이스에 종속된다. 그래서 MySQL에서 데이터를 다루기 위해선 가장 먼저 데이터베이스, 테이블을 만들어줘야 한다. 2. 데이터베이스와 테이블 만들기 아래는 데이터베이스와 테이블을 만드는 코드다. CREATE DATABASE TestDb; -- 데이터 베이스 생성 USE TestDb; -- 데이터 베이스 선택 CREATE TAB..
-
관계형 데이터베이스(Relational database)데이터베이스/데이터베이스 기본 2020. 9. 24. 00:46
관계형 데이터 베이스(realational database)란? 현재 시장에서 가장 널리 쓰이고 있는 데이터 베이스의 한 종류다. 관계형 데이터 베이스는 자료를 테이블로 구성해 관리하며 이 테이블은 key와 value의 관계를 나타낸다. 이렇게 데이터의 종속성을 관계(relationship)으로 표현하는 것이 특징이다. 관계형 데이터베이스의 특징 1. 데이터의 분류, 정렬, 탐색 속도가 빠르다. 2. 오랫동안 사용한만큼 신뢰성이 높고 무결성을 보장한다. 3. 기존에 작성된 스키마를 수정하기가 어렵다. 4. 데이터베이스의 부하를 분석하는 것이 어렵다. 관계형 데이터 베이스 용어 1. 열 (column) 각각의 열은 유일한 이름을 가지고 있고 타입을 가지고 있다. 이러한 열은 필드(field) 또는 속성이라..