초보개발자

MySql 테이블 명령어(2) 본문

WEB Server/MySQL

MySql 테이블 명령어(2)

___yejin 2017. 3. 9. 14:10

데이터 입력하기

insert into 'tablename' (column name1, column name2, ...,) values('value1', 'value2',....);

여기서 column name은 예를 들어, 제목, 작성자 등을 나타내며 value는 해당 column에 넣을 값을 말한다.

이때 auto_increment 제약조건이 붙은 column은 빈칸으로 두어도 무방하다.


 

데이터 보기

select 'column name1', 'column name2',... from 'table name' where 'condition';

select 바로 뒤에는 column의 이름이 오며, from은 테이블 이름이 온다. where은 특정 조건을 나타내며 필요 없는 경우 생략할 수 있다.


예를 들어 아래와 같은 명령어를 실행했다고 하자.

select name from student where id = '11111';

이 경우 student 라는 테이블에서 아이디가 '11111'인 데이터의 이름을 출력하게 된다.


만약 모든 데이터를 보고 싶다면 '*'를 사용할 수 있는데 이 것은 all을 의미한다. 아래와 같이 사용할 수 있다.

select * from 'table name'; 


데이터 수정하기

update 'table name' set '수정할 내용' where 'condition';

수정하는 것은 어떤 조건에 맞을 때 해당 부분을 수정하는 형식으로 이루어진다. 이때 주의할 점은 where을 생략할 수 없으며, 뒤에 오는 조건에는 primary key를 포함하여 정해야 한다. 


primary key란 해당 테이블에서 기준이 되는 값이며, 하나 이상의 column들로 이루어져 있고 중복이 되지 않는 값 혹은 집합을 의미한다. 예를 들어, 학생의 정보를 가진 테이블이 있다고 하자. 이때 학생을 구분하는 기준은 무엇이 될까? 이름은 동명이인이 있을 수 있다. 그러므로 이름은 primary key가 될 수 없다. 이 테이블에서 primary key가 될 수 있는 것은 학번이다. 다른 예제를 들어보면 강의수업의 정보를 가진 테이블이 있다고 하자. 이 테이블은 학수번호, 강의명, 교수님 등의 정보를 가질 수 있다. 학수번호와 강의명의 경우 똑같은 정보를 가진 다른 수업이 있을 수 있다. 그럼 이 정보를 구분할 수 있는 것은 (강의명, 교수님) 혹은 (학수번호, 강의명, 교수님)으로 묶은 집합이다. primary key가 될 수 있는 값이나 집합은 여러개 있을 수 있으며 그것을 candidate key라고 한다. candidate key는 중복이 되지 않으며, 각 데이터끼리 구분할 수 있는 값이나 집합의 모임이다. 그 중에 하나를 골라 primary key라고 한다.


위 내용은 내가 코딩하다가 자꾸 까먹거나, 기억해두기 위해 작성하는 것이므로 설명 내용이 없을 수 있다. 


Comments