데이터베이스와 테이블 구축 2
📌 테이블에 row 추가 1
SELECT * FROM course_rating.student;
현재 course_rating의 student 테이블은 row가 하나도 없는 상태이다.
INSERT INTO
테이블 (컬럼1, 컬럼2, ..., 컬럼n)VALUES
(값1, 값2, ..., 값n)
✅ 학생 1의 모든 컬럼의 row 추가
INSERT INTO student
(id, name, student_number, major, email, phone, admission_date)
VALUES (1, '성태후', 20142947, '컴퓨터공학과', '[email protected]', '010-0000-1234', '2014-03-12');
✅ 학생 2의 모든 컬럼의 row 추가
INSERT INTO student
VALUES (2, '김소원', 20130912, '화학과', '[email protected]', '010-1234-0000', '2013-03-07');
모든 컬럼의 값이 있는 row를 추가할 때는 컬럼 이름 작성을 생략해도 된다.
📌 테이블에 row 추가 2
위에서는 모든 컬럼에 값이 있는 경우를 추가하였다.
이번에는 모든 컬럼이 아닌 특정 컬럼에만 값이 있는 경우를 추가해보자.
✅ email과 phone을 제외한 컬럼의 값을 추가
INSERT INTO student
(id, name, student_number, major, admission_date)
VALUES (3, '이현승', 20111025, '법학과', '2011-03-02');
값을 넣어주지 않은 컬럼은 NULl
로 나타난다.
✅ id를 제외한 컬럼의 값을 추가
INSERT INTO student
(name, student_number, major, admission_date)
VALUES ('정유진', 201610843, '빅데이터학과', '2016-03-15');
id 컬럼에 값을 입력하지 않았음에도 불구하고 4라는 값이 자동으로 입력되어 있다. 왜일까 ❓
id 컬럼에 Auto increment
속성이 있기 때문이다. Auto increment
속성이 있는 컬럼은 자동으로 이전 row보다 큰 숫자값을 넣어주게 된다.
현재 id 컬럼은 student 테이블의 Primary Key
이다. id 컬럼의 값이 각 row마다 고유해야 한다. 하지만 Auto increment
속성을 주면 자동으로 새로운 고유한 숫자값을 넣어주기 때문에 걱정할 필요가 없다.
✅ 과제 : 데이터베이스와 테이블생성 1
한 동물원에서 동물들을 관리하기 위해 animal_info
라는 테이블을 만들려고 한다. CREATE TABLE
문을 사용해서 이 animal_info 테이블을 직접 만들어라.
id
: Primary Key로 사용할 컬럼, 데이터 타입 : INTtype
: 동물 종류(사자, 코끼리 등), 데이터 타입 : VARCHAR, 최대 길이 : 30자name
: 동물 이름(리오, 조이 등), 데이터 타입 : VARCHAR, 최대 길이 : 10자age
: 나이, 데이터 타입 : TINYINTsex
: 성별, 데이터 타입 : CHAR, 최대 길이 : 1자weight
: 몸무게, 데이터 타입 : DOUBLEfeature
: 특징 묘사, 데이터 타입 : VARCHAR, 최대 길이 : 500자entry_date
: 동물원에 들어온 날짜, 데이터 타입 : DATE
id
컬럼에는AUTO_INCREMENT
속성- feature 컬럼을 제외한 모든 컬럼에는
NOT NULL
속성feature
컬럼에만 NULL이 존재해도 된다는 의미로NULL
속성
💻 풀이
CREATE TABLE `animal_info` (
`id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
`type` VARCHAR(30) NOT NULL,
`name` VARCHAR(10) NOT NULL,
`age` TINYINT NOT NULL,
`sex` CHAR(1) NOT NULL,
`weight` DOUBLE NOT NULL,
`feature` VARCHAR(500) NULL,
`entry_date` DATE NOT NULL);
INSERT INTO animal_info
(type, name, age, sex, weight, feature, entry_date)
VALUES ('사자', '리오', 8, 'm', 170.5, '상당히 날렵하고 성격이 유순한 편임', '2015-03-21');
INSERT INTO animal_info
(type, name, age, sex, weight, feature, entry_date)
VALUES ('코끼리', '조이', 15, 'f', 3000, '새끼 때 무리에서 떨어져 길을 잃고 방황하다가 동물원에 들어와서 적응을 잘 마침', '2007-07-16');
INSERT INTO animal_info
(type, name, age, sex, weight, feature, entry_date)
VALUES ('치타', '매튜', 20, 'm', 62, '나이가 노령이라 최근 활동량이 현저히 줄어든 모습이 보임', '2003-11-20');
SELECT * FROM animal_info;
👉 결과
✅ 과제 : 데이터베이스와 테이블생성 2
한 분식집의 메뉴들의 정보를 저장하기 위해 food_menu
테이블을 준비했다. 아직 row들이 없어서 텅 비어있는 상태이다.
INSERT INTO
문을 사용해서 아래 메뉴 정보들을 테이블에 채워라.
- (라볶이 / 5000 / 라면, 떡, 양파..)
- (치즈김밥 / 3000 / 치즈, 김, 단무지..)
- (돈까스 / 8000 / 국내산 돼지고기, 양배추..)
- (오므라이스 / 7000 / 계란, 당근..)
id
컬럼에는 현재 AUTO_INCREMENT
속성이 적용되어 있기 때문에 굳이 값을 입력할 필요가 없다.
💻 풀이
INSERT INTO food_menu
(menu, price, ingredient)
VALUES ('라볶이', 5000, '라면, 떡, 양파..');
INSERT INTO food_menu
(menu, price, ingredient)
VALUES ('치즈김밥', 3000, '치즈, 김, 단무지..');
INSERT INTO food_menu
(menu, price, ingredient)
VALUES ('돈까스', 8000, '국내산 돼지고기, 양배추..');
INSERT INTO food_menu
(menu, price, ingredient)
VALUES ('오므라이스', 7000, '계란, 당근..');
SELECT * FROM food_menu;
👉 결과
... ing
Author And Source
이 문제에 관하여(데이터베이스와 테이블 구축 2), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@revudn46/데이터베이스와-테이블-구축-2저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)