본문 바로가기

DB∙SQL9

[MySQL] MySQL에서 인덱스, 뷰, 스토어드 프로시저 사용하기 1️⃣ 인덱스 실습 · 기본적으로 SQL문을 실행하면 Full Table Scan 으로 실행된다.이것은 테이블의 처음부터 끝까지 탐색하며 찾은 것 (Result Grid 창에서 오른쪽부분 맨 아래 쪽으로 화살표 내리면 Execution Plan 탭 있는데 거기서 확인 가능) · 인덱스를 만드는 명령어 실행. 인덱스는 열에 지정 CREATE INDEX idx_member_name ON member(member_name); member 테이블의 member_name 열에 인덱스를 지정하라는 뜻 · 인덱스 생성 후 아까의 SQL문을 다시 수행해보고, Execution Plan 탭을 보면 Non-Unique Key Lookup으로 되어있다. 이는 인덱스를 통해 결과를 찾았다는 것 2️⃣ 뷰 실습하기 · 기본적인.. 2023. 7. 19.
[DB] 인덱스, 뷰, 스토어드 프로시저 오늘은 인덱스, 뷰, 스토어드 프로시저에 대해서 간단하게 찍먹해보자 🧡 인덱스(Index) · 데이터베이스에서 검색 속도를 향상시키기 위해 사용되는 데이터 구조 · 책 뒤의 '찾아보기' 개념과 비슷. 책의 처음부터 마지막까지 모든 페이지를 찾는것 보다, 뒤의 찾아보기로 찾는게 더 빠르다. · 데이터의 효율적인 검색이 가능하지만, 추가적인 디스크 공간을 사용한다. 🧡 뷰(View) · 하나 이상의 테이블로부터 유도된 가상의 테이블 · 일반 사용자 입장에서는 테이블과 뷰를 구분할 수 없다. · 뷰는 실제 데이터를 갖는것이 아니고, 진짜 테이블에 링크된 개념이라고 생각하면 된다.(바로 가기 아이콘 개념을 생각) · 데이터 보안이라는 장점이 있음 🧡 스토어드 프로시저(Stored Procedure) · 여러 개.. 2023. 7. 19.
[DB] DB, SQL에서 대소문자 · 열 이름을 영문으로 만들 때 띄어쓰기는 하지 않는 것이 좋다. 띄어쓰기를 한다면 열 이름을 큰 따옴표로 묶어줘야 해서 불편하다. 그래서 보통은 언더바로 구분한다. (ex. member_id) [띄어쓰기가 있는 열의 경우] SELECT "First Name", "Last Name" FROM Customers; · 일반적으로 SQL은 대문자를 구분하지 않는다. (데이터베이스 시스템마다 다를 수 있음) 보통 가독성을 위해 예약어(기존에 약속된 SELECT, FROM, WHERE 같은 SQL) 는 대문자로, 테이블 이름, 열 이름은 소문자로 작성하는 것이 관례 SELECT * FROM customers; 2023. 7. 18.
[MySQL] MySQL Workbench에서 SQL문 사용하는 법 · Create a new SQL tab for executing queries 아이콘을 누른다. (File - New Query Tab을 선택해도 된다.) · Schemas 탭에서 작업할 데이터베이스를 더블클릭한다. 글씨가 볼드체로 변하면 앞으로 적을 SQL이 해당 데이터베이스에 적용된다는 뜻. 이거 꼭 빼먹지 않도록 주의 · 모든 행을 조회하는 다음 SQL을 입력 SELECT * FROM member; 그 후 쿼리창 위쪽에있는 번개모양 아이콘(Execute the selected .... ... or everything) 을 누르면 Result Grid 창에는 결과가, Output 창에는 현재 결과의 건수와 조회시간을 보여준다. (Query - Execute (All or Selection) 메뉴를 .. 2023. 7. 18.
[MySQL] MySQL Workbench 사용해보기 2 - 데이터 수정, 데이터 삭제(SQL 사용 X) 1️⃣ 데이터 수정하기 · 아까와 같이 원하는 테이블을 우클릭 한 뒤 select rows - limits 1000을 클릭한다. 그 후 테이블이 뜨면 수정하고 싶은 칸을 클릭하고 데이터를 수정한 뒤 apply를 누른다. 이번에도 자동으로 SQL이 생성된다. apply, finish 차례대로 눌러준다. 2️⃣ 데이터 삭제하기 · Result Grid 창에서 삭제하고자 하는 행의 제일 앞 부분(삼각형 있는 부분)을 클릭하면 행이 파란색으로 선택된다. 그 상태에서 우클릭을 해서 Delete Row를 선택한다. 이것도 역시 Apply를 눌러줘야 하고, 생성된 SQL이 뜬다. 거기서 Apply, Finish 눌러준다. 2023. 7. 18.
[MySQL] MySQL Workbench 사용해보기 1 - 데이터베이스 생성, 테이블 생성, 데이터 삽입(SQL 사용 X) 🧡 데이터베이스 구축 절차 데이터베이스 만들기 → 테이블 만들기 → 데이터 입력/수정/삭제하기 → 데이터 조회/활용하기 데이터베이스를 구축하기 위해서는 DBMS를 설치해야 한다. 나는 앞서 MySQL을 설치했다. 1️⃣ 데이터베이스 생성 · MySQL Workbench를 실행한 후 MySQL Connections에서 Local instance MySQL을 클릭한 후, User root에 앞 게시물에서 설치할 때 설정한 비밀번호를 입력한다. · 좌측에서 Schemas 탭으로 이동한다. 참고로 스키마와 데이터베이스는 동일한 용어. (sakila, sys, world는 MySQL에 기본적으로 들어있는 데이터베이스이다.) · Schema 패널의 빈 부분에서 우클릭 한후 Create Schema 선택 · Name.. 2023. 7. 18.