04 MySQL 기본 명령어
데이터베이스 언어는 데이터베이스를 통해 턱정 정보를 추출하고 보여주는 언어를 말하며 SQL 이 대표적이다. 데이터베이스용 쿼리 언어의 일종인 SQL은 관계형 데이터베이스를 관리하는 데이터베이스 관리 시스템에서 사용하는 언어이다. SQL 은 질의 기능을 비롯해 데이터 정의 및 조작 기능을 가지고 있으며, 개개의 레코드보다 테이블 단위로 연산을 수행한다.
SQL 문장의 종류
SQL 문장 | 종류 |
데이터 정의 언어(database language) | CREATE, ALTER, DTOP.... |
데이터 조작 언어 (data manipulation language) | SELECT , INSERT, DELETE, UPDATE , ... |
데이터 제어 언어(data control language) | GRANT, REVOKE, COMMIT, ROLLBACK,... |
4.1 테이블 관련 명령어
테이블 생성하기
테이블 생성은 데이터베이스에서 매우 기본적ㅇ인 작업이며 형식은 다음과 같다.
CREATE TABLE 테이블 이름(필드 이름 1 자료형1[,필드 이름 2 자료형2, ....]);
다음은 3개의 열 id, name, passwd 가 포함된 member 라는 테이블을 생성하는 예이다. 반드시 사용할 데이터베이스를 선택해야 테이블을 생성할 수 있다. id 열 int 형으로 정수를 포함한다. name 과 passwd 열은 varchar 형으로 문자를 포함하여 이 필드의 최대 길이는 각 100자 ,50 자 이다.
[CREATE 명령어 사용 예]
CREATE TABLE member(
id int NOT NULL AUTO_INCREMENT,
name VARCHAR(100) not null,
passwd VARCHAR(50) not null,
PRIMARY KEY(id)
);
여기서 NOT NULL 은 NULL 을 허용하지 않는다는 것을 의미한다. PRIMARY KEY 는 고유한 키 인덱스로, 다른 테이블을 찹조하는 데 사용될 수 있음을 의미하는 id 열에 사용된다. 이때 id 는 AUTO INCREMENT 이기도 한다. 즉 이 id 는 새로운 행 삽입 시 자동으로 생성되며 기본적으로 1 씩 증가한다.
테이블 조회하기
현재 선택된 데이터베이스에 존재하는 테이블 목록을 출력하는 MySQL 명령어는 SHOW 이며 형식은 다음과 같다.
SHOW TABLES;
다음은 테이블 목록을 출력하는 예이다. 앞의 예제에서 생성한 데이터베이스 JSPBookDB를 적용하면 이 데이터베이스에 존재하는 테이블 목록을 확인 할 수 있다.
테이블 세부 조회하기
특정 테이블의 세부 사항을 확인하는 MySQL 명령어는 DESC 이며 형식은 다음과 같다.
DESC 테이블 이름;
다음은 앞의 예에서 생성한 Member 테이블의 세부 사항을 출력하는 예이다,
[DESC 명령어 사용 예]
테이블 구조 변경하기
특정 테이블의 구조를 변경하는 MySQL 명령어는 ALTER 이며 형식은 다음과 같다.
ALTER TABLE 테이블 이름
[ADD 필드 이름 자료형 |
DROP COLUMN 필드 이름|
CHANGE COLUMN 기존 필드 이름 새 필드 이름 자료형];
- 기존 테이블에 열을 추가하는 경우 : 기존 테이블 이름이 member 이고 여기에 새로운 열 이름 phone 을 추가하는 경우 다음과 같다.
ALTER TABLE member ADD phone varchar(100);
[ALTER 명령어 사용 예 : 열 이름 phone 추가]
- 기존 테이블의 열을 삭제하는 경우 : 기존 테이블 이름이 member 이고 여기서 열 이름 phone을 삭제하는 경우 다음과 같다.
ALTER TABLE member DROP COLUMN phone;
[ALTER 명령어 사용 예 : 열 이름 phone 삭제]
- 기존 테이블의 열 이름을 수정하는 경우 : 기존 테이블 이름이 member 이고 여기서 열 이름 passwd 를 password 로 변경하는 경우는 다음과 같다.
ALTER TABLE member CHANGE COLUMN passwd password varchar(60);
[ALTER 명령어 사용 예 : 열 이름 passwd 를 password 로 수정]
테이블 이름 변경하기
특정 테이블 이름을 변경하는 MySQL 명령어는 RENAME 이며 형식은 다음과 같다.
RENAME TABLE 테이블 이름 TO 새 테이블 이름[,
테이블 이름 TO 새 테이블 이름, ...];
다음은 테이블 이름 member 를 student로 변경하는 예이다.
[RENAME 명령어 사용 예]
4.2 데이터 조작 명령어
데이터 조작 명령어는 사용자가 적절한 데이터 모델로 구성된 데이터에 접근하거나 데이터를 조작할 수 있도록 하는 언어를 말한다. 데이터베이스 내의 데이터 연산을 위한 언어로 데이터베이스 내에서 데이터 검색, 추가, 삭제 , 갱신 작업이 가능하다 .
데이터 조작 명령어의 종류
명령어 | 설명 | 명령어 | 설명 |
INSERT | 데이터를 등록한다. | DELECT | 데이터를 삭제한다. |
UPDATE | 데이터를 수정한다. | SELECT | 데이터를 조회한다. |
데이터 등록하기
터이블에 새로운 데이터를 삽입하는 MySQL 명령어는 INSERT 이며 형식은 다음과 같다.
INSERT [INTO] 테이블 이름 [(필드 이름, 필드 이름, ...)] VALUES (필드 값, 필드 값, ...)
다음은 JSPBookDB 라는 데이터베이스에 있는 student 테이블에 새로운 데이터를 삽입하는 예이다.
[INSERT 명령어 사용 예]
INSERT INTO student VALUES('1', '홍길동', '1234');
데이터 조회하기
테이블에 존재하는 데이터를 검색하는 MySQL 명령어는 SELECT 이며 형식은 다음과 같다.
SELECT 필드 이름[, 필드 이름, ...] FROM 테이블 이름 [WHERE 검색조건]
[ORDER BY 필드이름 [ASC or DESC]] [GROUP BY 필드 이름[, 필드 이름, 필드 이름,...]]
다음은 JSPBookDB 에 있는 student 테이블의 모든 행을 조회하는 예이다.
[SELECT 명령어 사용 예 : 모든 행 검색]
SELECT * FROM student;
[SELECT 명령어 사용 예 : name, passwd 필드의 데이터 검색]
SELECT name, passwd FROM student ;
다음은 JSPBookDB 에 있는 student 테이블에서 3개의 행을 조회하는 예이다.
[SELECT 명령어 사용 예 : 3개 행의 테이터 검색]
SELECT * FROM student LIMIT 3;
다음은 JSPBooKDB 에 있는 student 테이블에서 id 를 내림차훈으로 정렬한 후 3개의 행을 조회하는 예이다.
[SELECT 명령어 사용 예 : id 의 내림차순 정렬과 3개의 행의 데이터 검색]
SELECT * FROM student ORDER BY id DESC LIMIT 3;
다음은 JSPBookDB 에 있는 student 테이블에서 id 가 2인 행을 조회하는 예이다.
[SELECT 명령어 사용 예 : id 가 2 인 데이터 검색]
SELECT * FROM student WHERE ID = 2;
데이터 수정하기
테이블의 데이터를 수정 (갱신 )하는 MySQL 명령어는 UPDATE 이며 형식은 다음과 같다.
UPDATE 테이블 이름 SET 필드 이름 = 필드 값[, 필드 이름=필드 값,...][WHERE 검색 조건]
다음은 JSPBookDB 에 있는 student 테이블에서 name 필드 값이 '홍길동' 인 것을 검색하여 '관리자'로 수정하는 예이다.
[UPDATE 명령어 사용 예 : name 이 '홍길동 '인 것을 '관리자' 로 수정]
UPDATE student SET name = '관리자' WHERE name = '홍길동';
데이터 삭제하기
테이블의 데이터를 삭제하는 MySQL 명령어는 DELETE 이며 형식은 다음과 같다.ㅣ
DELETE FROM 테이블 이름 [WHERE 검색조건]
다음은 JSPBookDB 에 있는 student 테이블에서 id 필드 값이 4인 것을 검색하여 해당 행을 삭제하는 예이다.
[DELETE 명령어 사용 예 : id 가 4인 행을 삭제]
DELETE FROM student WHERE id = 4;
다음은 JSPBookDB 에 있는 student 테이블에서 모든 행을 삭제하는 예이다.
[DELETE 명령어 사용 예 : 모든 행 삭제]
DELETE FROM student;
'JSP, Servlet, MySQL > JSP - webmarket' 카테고리의 다른 글
JSP Servlet JDBC로 데이터베이스와 JSP 연동 : 상품조회, 등록, 수정, 삭제하기 (1) | 2024.02.25 |
---|---|
JSP Servlet 데이터베이스 개발 환경 구축 : 상품 관리 테이블 생성 및 상품 등록하기 3 (0) | 2024.02.24 |
JSP Servlet 데이터베이스 개발 환경 구축 : 상품 관리 테이블 생성 및 상품 등록하기 (0) | 2024.02.24 |
JSP Servlet 쿠키 : 주문 처리 페이지 만들기 2 (0) | 2024.02.22 |
JSP Servlet 쿠키 : 주문 처리 페이지 만들기 (0) | 2024.02.21 |