본문 바로가기
공부기록/MySQL

3월 29일 (2) DB - DML UPDATE, SELETE, DB 추가

by project100 2023. 3. 29.

3) UPDATE SET : 테이블 데이터를 수정, 데이터 갱신

테이블에 삽입된 데이터를 수정하는 명령, 컬럼단위로 수행.

행을 선택하는 조건이 없는 경우 모든 행의 컬럼에 수정 작업을 진행

같이 사용하는 명령어 : SET -  '컬럼 = 값' 형식

SET 절의 =은 값을 컬럼에 집어넣어라, WHERE절의 = 은 같다 

 

문법)

UPDATE 테이블명

SET 컬럼1 = 변경데이터[, 컬럼2 = 변경데이터, ......]

[WHERE 조건];

SELECT * FROM company;

-- 농심 담당자 변경 - 최농심(전부변경됨)
UPDATE company
SET cmanager = '최농심';
ROLLBACK;

UPDATE company
SET cmanager = '최농심', cphone = '010-7777-9888'
WHERE cname = '농심';
COMMIT;

SELECT * FROM member;

-- 나이 입력(수정)
UPDATE member
SET mage = 20;

UPDATE member
SET mage = 61
WHERE mid = 'test08';

-- 모든 회원의 나이 1살 올리기
UPDATE member SET mage = mage + 1;

-- 모든 직원의 급여를 10% 올리기, where 절 안 씀
UPDATE emp SET sal = sal * 1.1;

SELECT * FROM emp;

-- 상품 구매시 상품 구매 금액의 1% 적립
-- test 2가 50000원 상품을 구매
UPDATE member SET mpoint = mpoint + 50000 *  0.01
WHERE mid = 'test02';

 

SQL 쿼리문 작성 규칙

1. SQL문은 대소문자를 구분하지 않는다.

2. SQL문은 문장 단위로 실행하며, 한 문장은 여러 줄로 작성할 수 있다.

3. (권장) SQL문은 대문자로 이름(테이블명, 컬럼 명 등)은 소문자로 작성한다.

4. 문장의 마지막에 ';'을 반드시 작성한다.

5. 이름에는 공백을 사용하지 않는다. 별칭 등에는 '(백틱)을 사용하여 공백을 넣을 수 있다. 한글로 작성가능

    단어와 단어 사이에 '_' (스네이크 케이스)로 연결

 

 

4) SELECT FROM : 테이블 데이터를 선택(조회, 선택)

DQL(Data Query Language, 데이터 질의어)로 분류하기도 함.

테이블 데이터를 검색하는 명령어, 행 단위로 처리하고 처리 결과를 다시 컬럼단위로 지정하여 확인

 

문법)

SELECT [DISTINCT] {*, 컬럼명 [별칭], 컬럼명 [별칭], .......}

FROM 테이블명

[WHERE 조건]

[ORDER BY 컬럼명 ASC|DESC];

 

DISTINCT : 결과 데이터의 중복제거(대상은 1개 컬럼) UPDATE 외에는 데이터가 변경되지 않음, 복사본사용.

* : 모든 컬럼

별칭(Alias) : 컬럼이름에 또 다른 이름을 부여 (출력 시만 사용)

ORDER BY :  특정 컬럼의 데이터를 기준으로 결과행들을 정렬

   ASC : 오름차순

   DESC : 내림차순

정렬을 따로 하지 않을 경우 기본 정렬은 PRIMARY KEY의 오름차순 정렬이나 입력순서

 

SELECT mid FROM member;

-- 30세 이상의 회원정보 출력
SELECT * FROM member
WHERE mage >= 30;

-- 모든 회원을 많은 나이순으로 출력
SELECT * FROM member
ORDER BY mage DESC;

 

데이터베이스 추가 

 

추가할 데이터베이스 폴더 주소창에 CMD . (cmd 띄어쓰기 점)

 

도스모드에 mysql -V

 

만약 아래문구가 나온다면

M:\Raspberry-work\Front-end\DB\DB04\employees>mysql -V
'mysql'은(는) 내부 또는 외부 명령, 실행할 수 있는 프로그램, 또는
배치 파일이 아닙니다.

 

시스템 환경변수 편집

 

C:\Program Files\MySQL\MySQL Server 8.0\bin(프로그램 서버 경로) 입력

 

 

다시 폴더 주소창에 CMD .

 

아래 문구가 나오면 성공

M:\Raspberry-work\Front-end\DB\DB04\employees>mysql -V
mysql  Ver 8.0.32 for Win64 on x86_64 (MySQL Community Server - GPL)

 

mysql -u root -p -t < employees.sql 입력

root 실행 패스워드 입력

M:\Raspberry-work\Front-end\DB\DB04\employees>mysql -u root -p -t < employees.sql
Enter password: ****

 

완료되면 나오는 문구

M:\Raspberry-work\Front-end\DB\DB04\employees>(폴더 경로)

 

root 계정 - users and privileges - dev01(계정선택) - schema privileges - add entry

-새창 selected schema - 데이터선택 employees - ok - select all - apply - 닫고 다시 계정 열기