에르노트

SQL 기본문법 정리 본문

CS

SQL 기본문법 정리

두콩 2019. 10. 29. 15:47

테이블 생성


CREATE TABLE 테이블명 (필드명 자료형, ...)




레코드 추가


INSERT INTO 테이블명(필드명, ...)  VALUES (값, ...)

이때 필드명(열 이름)은 생략하고 적절한 순서로 값들을 열거할 수 있다.



레코드 검색


SELECT * FROM Students (모든 필드 검색)

SELECT 필드명 FROM Students(필드명에 해당하는 데이터 검색, 쉼표로 구분지어서 여러개 설정가능)






레코드 삭제


DELETE FROM 테이블명 WHERE 조건


아래 예시와 같이 name = 'Smith'라는 조건을 WHERE 뒤에 붙여줌으로써 Students 테이블에서 이름이 Smith인 튜플들을 모두 삭제할 수 있다. 이때 위에서와는 다르게 STUDENTS를 대문자로 표기하였는데, SQL은 기본적으로 대소문자를 구분하지 않기 때문에 어떻게 쓰더라도 무방하다.



데이터 변경


UPDATE 테이블명 SET (필드명=값, ...) WHERE 조건


DELETE와 마찬가지로 WHERE 키워드를 통해 조건을 설정할 수 있다.

아래와 같이 sql을 작성하면 sid가 53688인 모든 튜플에 대하여 name을 L로 바꾸게 된다.





키 제약조건 명시


UNIQUE 제약조건을 사용함으로써 한 테이블에 속한 필드들의 부분집합이 (후보)키임을 선언할 수 있다. 그리고 이 후보키들 중 최대 1개만 PRIMARY_KEY 제약조건을 사용해서 기본키로 선언될 수 있다. 또 [CONSTRAINT 이름]의 형태로 제약조거에 이름을 명시하여 오류 식별에 활용할 수 있다.



위와 같이 제약조건을 명시하면서 테이블을 생성한 후



sid가 53666이고 name이 Jones인 튜플을 삽입한다. 여기서 sid는 Primary Key라는 것에 주목하자.



이어서 sid가 53666이고 name이 Smith인 다른 튜플을 삽입하려하면 에러가 발생한다. 제약조건을 위반했기 때문이다.




'CS' 카테고리의 다른 글

[CS50]기억장치: CPU, 캐시, 하드디스크, RAM  (0) 2017.12.17
Comments