일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
31 |
- suricata
- API
- cloud
- GoogleDrive
- VSCode
- Spring
- git
- Github
- Resnet
- ChatGPT
- Docker
- ICT멘토링
- Python
- KAKAO
- Powershell
- 고등학생 대상
- Database
- Spring Boot
- Machine Learning
- Rocky Linux
- rnn
- C언어
- 국가과제
- Web
- 인터넷의이해
- LINUX MASTER
- 크롤링 개발
- 코딩도장
- OSS
- colab
- Today
- Total
코딩두의 포트폴리오
7. MySQL 데이터베이스 구조 및 자료 수정과 삭제 본문
칼럼 추가
1. 칼럼 추가 명령어
1) 테이블 제일 뒤에 칼럼 추가
ALTER TABLE 테이블명 ADD 새컬럼명 자료타입;
2) 테이블 제일 앞에 칼럼 추가
ALTER TABLE 테이블명 ADD 새컬렴명 자료타입 FIRST;
3) 특정 칼럼 뒤에 칼럼 추가
ALTER TABLE 테이블명 ADD 새컬럼명 자료타입 AFTER 앞칼럼명;
2. 칼럼 추가 예
EX) 글을 작성한 사람을 기록하는 칼럼을 추가
칼럼명: writer / 타입: varchar(10)
1) 테이블 제일 뒤에 칼럼 추가
(1) 쿼리문 - ALTER TABLE manage ADD writer varchar(10);
(2) 실행 결과
2) 테이블 제일 앞에 칼럼 추가
(1) 쿼리문 - ALTER TABLE manage ADD writer varchar(10) FIRST;
(2) 실행 결과
3) 특정 칼럼 뒤에 칼럼 추가
(1) 쿼리문 - ALTER TABLE manage ADD writer varchar(10) AFTER market;
(2) 실행 결과
칼럼 삭제
1. 칼럼 삭제 명령어
ALTER TABLE 테이블명 DROP 삭제할칼럼명;
2. 칼럼 삭제 실행 예
칼럼 변경
1. 칼럼명 변경
1) 칼럼명 변경 명령어
ALTER TABLE 테이블명 CHANGE 기존칼럼명 변경칼럼명 칼럼타입;
2) 칼럼명 변경 실행 예
(1) 쿼리문
ALTER TABLE manage CHANGE writer name varchar(8);
(2) 실행 결과
(3) 칼럼명 변경 확인
2. 칼럼 타입 변경
1) 칼럼 타입 변경 명령어
ALTER TABLE 테이블명 MODIFY 칼럼명 변경칼럼타입;
2) 칼럼 타입 변경 실행 예
(1) 'buy' 칼럼 타입 변경 전 확인
(2) 칼럼 타입 변경 실행
INT -> CHAR
(3) 칼럼 타입 변경 확인
3. 칼럼 위치 변경(이동)
1) 칼럼 위치 변경 명령어
ALTER TABLE 테이블명 MODIFY 칼럼명 칼럼타입 AFTER 앞칼럼명;
2) 칼럼 위치 변경 실행 예
(1) 'buy' 칼럼 위치 변경 전 확인
(2) 칼럼 위치 변경 실행
(3) 칼럼 위치 변경 확인
데이터 수정과 삭제
1. 데이터의 수정
1) 입력된 데이터의 내용 수정이 필요한 경우
2) 데이터 수정 명령문
UPDATE 테이블명 SET 칼럼명 = 수정데이터 WHERE 조건;
-> UPDATE account SET amount = 10 WHERE list = '통신비'
조건에 해당하는 것은 list 칼럼의 항목 중에 통신비에 해당하는 레코드 중 amount 칼럼 내용 수정
3) 데이터 수정 실행 예
2. 데이터의 수정 시 조건 사항에 의한 오류
1) 조건 사항을 입력하지 않을 경우
(1) 조건 사항을 입력한 경우
UPDATE account SET amount = 20 WHERE list = '통신비'
(2) 조건 사항을 입력하지 않은 경우
UPDATE account SET amount = 20;
-> 전체 레코드의 amount 항목이 20을 수정됨
3. 조건 사항 중복에 의한 오류
1) 수정하고자 하는 조건의 레코드가 1개 이상일 경우
- 수정하고자 하는 조건의 레코드가 1개 이상일 경우 수정을 진행하면 해당되는 레코드 모두 수정됨
2) 중복 조건 레코드의 예
(1) 중복 조건 레코드 수정
UPDATE account SET amount = 300 WHERE list='급여';
(2) 중복 조건 레코드 수정 결과
- 테이블 설계 오류에 따라 해당 현상이 발생 -> 레코드별 유일한 값을 부여하는 Primary Key를 적용하여 해결
Primary Key
1. Primary Key의 개념
- '기본 키'라고도 함
- 각 행을 구분하는 유일한 키 중 하나를 선정하여 대표로 삼는 키
2. Primary Key의 적용
- 레코드 중에서 민증, 학번과 같은 중복될 수 없는 유일한 칼럼이 있다면 해당 칼럼을 Primary Key로 지정
- Primary Key 지정은 테이블을 생성시킬 때 적용
- Primary Key 적용 방법
MYSQL> CREATE TABLE person ( -> ID char(5) NOT NULL, -> name char(10), -> PRIMARY KEY(ID)); |
- ID 칼럼은 Primary Key를 지정함
- ID 칼럼은 Null값이 아니어야 함
- Primary Key가 지정된 칼럼에 레코드 입력 시 이전의 값과 동일한 값이 입력되면 에러가 발생
- Null 값이 지정될 칼럼일 경우 레코드 입력 시 해당 칼럼에 어떠한 값도 입력하지 않으면 에러가 발생
Auto_Increment
1. Auto_Increment의 개념
- Primary Key를 쉽게 할당해 주기 위한 일종의 자동 레코드 번호
- 자동으로 레코드 번호를 부여
- 테이블상에서 유일한 번호를 부여
2. Auto_Increment 적용 개요
- 테이블을 만들 때 Auto_Increment를 위한 칼럼을 생성
- 주로 number와 같은 번호를 의미하는 명칭으로 생성
- Auto_Increment 칼럼에 Primary Key를 적용하면 효율적임
3. Auto_Increment 적용
MYSQL> CREATE TABLE person (
-> number INT NOT NULL AUTO_INCREMENT,
-> name CHAR(5),
-> age INT,
-> PRIMARY KEY(number));
- number 칼럼을 Auto_Increment 지정
- number 칼럼은 Null 값이 아니어야 함
- Primary Key는 number 칼럼에 지정
4. Auto_Increment 적용 결과
데이터의 삭제
1. 데이터 삭제 명령 구문
DELETE FROM 테이블명 WHERE 조건사항
EX)
DELETE FROM box WHERE id=4;
- box라는 테이블에서 id 칼럼 데이터 중 4에 해당하는 레코드를 삭제한다는 의미
3. 테이블 내부 전체 데이터 삭제 명령 구문
TRUNCATE 테이블명;
EX)
TRUNCATE box;
- box라는 테이블은 존재하지만 내부의 데이터는 모두 삭제함
'STEP 특화교육 > MySQL 데이터베이스 기초와 Web 활용' 카테고리의 다른 글
9. MySQL 기본 함수의 활용 (2) | 2025.05.24 |
---|---|
8. MySQL 자료 수정과 삭제 Web 구현 (0) | 2025.05.22 |
6. MySQL 데이터베이스 자료의 정렬 (2) | 2025.05.21 |
5. MySQL 자료 입력 Web 연동 (1) | 2025.05.18 |
4. 데이터베이스 자료 입력과 검색 (0) | 2025.05.18 |