Database

(22.11.28)Database : SQL, RDBMS(Oracle), Run SQL Command Line, sqlDeveloper

ํ”„๋กœ๊ทธ๋ž˜๋จธ ์˜ค์›” 2022. 11. 28.

โ—โ—DataBaseโ—โ—

 

DBMS (Database Management System)

RDBMS(Relational Database Management System) ๊ด€๊ณ„ํ˜•~ ,Oracle , MySQL, MariaDB ...

SQL : Structured Query Language (DB๊ด€๋ฆฌ์šฉ ํ‘œ์ค€ ์งˆ์˜์–ด)

NoSQL(Not only ~) : ๋น…๋ฐ์ดํ„ฐ ์ €์žฅ์šฉ MongoDB

 

Java App -> SQL -> Oracle(table)

 

Oracle ๋‹ค์šด๋กœ๋“œ ํ•˜๊ธฐ

https://www.oracle.com/database/technologies/xe-prior-release-downloads.html

 

XE Prior Release Archive

Getting Started: Support Oracle Database Express Edition (XE) is a community supported edition of the Oracle Database family. Please go to the Oracle Database XE Community Support Forum for help, feedback, and enhancement requests. Note: Oracle Support Ser

www.oracle.com

 

 

๋‹ค์šด ๋กœ๋“œ ํ›„ 

Run SQL Command Line ์‹คํ–‰ํ•˜๊ธฐ 

์ตœ๊ณ  ๊ด€๋ฆฌ์ž ์ ‘์†ํ•˜๊ธฐ

 

 

Run SQL Command Line์—์„œ ํ•™์Šต์šฉ ๊ณ„์ • (scott/TIGER) ํ™œ์„ฑํ™”

 

 

@์™€ ์œ„์น˜ ๋งˆ์ง€๋ง‰์— \scott.sql์„ ์จ์„œ scott.sql ํ™œ์„ฑํ™”

 

 

@๋ฅผ ์“ฐ๊ณ  ๋‹ค์‹œ ํŒŒ์ผ ์œ„์น˜์™€ ํ•จ๊ป˜ \scott.sql ๊ฒ€์ƒ‰ํ•˜๋ฉด ์ €์žฅ๋œ ๊ฑธ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค.

Run SQL Command Line์—์„œ ํ•™์Šต์šฉ ํ…Œ์ด๋ธ” (emp , dept, salgrade, location) ํ™œ์„ฑํ™” ํ•ด๋ณด๊ธฐ

 

emp ํ…Œ์ด๋ธ” ์„ค๋ช… ๋ณด๊ธฐ

 

NUMBER(4): 4๊ธ€์ž๋กœ ๋œ ์ˆซ์ž

VARCHAR2(10): ๊ฐ€๋ณ€๋ฌธ์ž์—ด 10๊ธ€์ž

DATE: ๋‚ ์งœ

NUMBER(7,2): 7์ž๋ฆฌ๋กœ ๋œ ์ˆซ์ž์™€ ์†Œ์ˆ˜์  ์ดํ•˜๋Š” 2์ž๋ฆฌ ๊นŒ์ง€ ๊ฐ€๋Šฅํ•œ ์ˆซ์ž

 


 

โ—โ—sqldeveloperโ—โ—

 

 

์ปดํ“จํ„ฐ๋ฅผ ์‚ฌ์šฉํ•  ๋•Œ ์‚ฌ๋žŒ๊ณผ ์ปดํ“จํ„ฐ ๊ฐ„์˜ ์ธํ„ฐํŽ˜์ด์Šค์ธ CLI GUI๊ฐ€ ์žˆ๋‹ค.

CLI : Command Line Interface > Run SQL Command Line

GUI: Graphic User Interface > sqldeveloper (Run SQL Command Line์„ ์“ฐ์ง€ ์•Š์•„๋„ ์‰ฝ๊ฒŒ ๋‹ค๋ฅธ ํ”„๋กœ๊ทธ๋žจ์— ์—ฐ๊ฒฐํ•˜์—ฌ ์“ธ ์ˆ˜ ์žˆ๋„๋ก ๋งŒ๋“ค์—ˆ๋‹ค.)

sqldeveloper ๋‹ค์šด๋กœ๋“œ ํ•˜์—ฌ ์„ค์น˜ํ•˜๊ธฐ

java JDK HOME ์œ„์น˜์ฃผ์†Œ๋ฅผ ๋„ฃ์–ด์ค˜์•ผํ•œ๋‹ค.  Java ํŒŒ์ผ์ด ๋‹ค์šด๋˜์–ด ์žˆ๋Š” ๊ฒฝ๋กœ๋ฅผ ๋ณต์‚ฌ ๋ถ™์–ด๋„ฃ๊ธฐ 

 

ํ›„์— ์‹คํ–‰ํ•ด์ฃผ๋ฉด

 

 

์ƒˆ๋กœ๋งŒ๋“ค๊ธฐ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ ‘์†

emp๊ฐ์ฒด๋Š” scott ๊ณ„์ •์—๋งŒ ๋“ค์–ด ์žˆ์œผ๋ฏ€๋กœ ์กด์žฌํ•˜์ง€ ์•Š๋Š”๋‹ค๊ณ  ๋‚˜์˜จ๋‹ค.

 


sqldeveloper์—์„œ scott ๊ณ„์ •์œผ๋กœ emp ๊ฐ์ฒด ์„ค๋ช… ๋ณด๊ธฐ

์ด ๋•Œ ์ด๋ฆ„ ์—ด์— ์žˆ๋Š” ๊ฑด Column์ด๋ผ ๋ถ€๋ฅด๊ณ  ๋„? ์ด๋ผ๊ณ  ๋œ ๋ถ€๋ถ„์€ ์ œ์•ฝ ์กฐ๊ฑด์ด๋‹ค.

 

 

SELECT๋ฅผ ์ด์šฉํ•˜์—ฌ emp ๊ฐ์ฒด์˜ ๋ชจ๋“  ๋ฐ์ดํ„ฐ ๊ฐ€์ ธ์˜ค๊ธฐ

 

 

์‚ฌ์›๋ฒˆํ˜ธ๊ฐ€ 7566์ธ ํ–‰์˜ ์ „์ฒด ๋ฐ์ดํ„ฐ ๊ฐ€์ ธ์˜ค๊ธฐ

 

์‚ฌ์›๋ฒˆํ˜ธ๊ฐ€ 7566์ธ ํ–‰์˜ ์ด๋ฆ„๊ณผ ์‚ฌ์›๋ฒˆํ˜ธ๋งŒ ๊ฐ€์ ธ์˜ค๊ธฐ

WHERE์€  ํ–‰ ์กฐ๊ฑด์ด ๋“ค์–ด๊ฐ„๋‹ค.


 

SELECT๋ฌธ ์‹ค์Šต

SQL์—์„œ ๋…ผ๋ฆฌAND ๋Š” AND ์ด๊ณ  ๋…ผ๋ฆฌOR๋Š” OR ์ด๋‹ค.

 

SELECT๋ฌธ์˜ COUNT ํ•จ์ˆ˜

 

 

ORDER BY sal DESC, empno ASC ๋ผ๊ณ  ํ•˜๋ฉด ๋ด‰๊ธ‰์„ ๊ธฐ์ค€์œผ๋กœ ๋‚ด๋ฆผ์ฐจ์ˆœ์œผ๋กœ ์ •๋ ฌํ•˜๊ณ  ๊ทธ์ค‘์— ๋ด‰๊ธ‰์ด ๊ฐ™๋‹ค๊ณ  ์‚ฌ์› ๋ฒˆํ˜ธ์˜ ์˜ค๋ฆ„์ฐจ์ˆœ์œผ๋กœ ์ •๋ ฌํ•ด๋ผ๋Š” ๋œป์ด๋‹ค.

 

 

Sub Query

 

BETWEENํ•จ์ˆ˜

 

 

% ์™€ _

 

 

๊ธ‰์—ฌ๊ฐ€ 3000์ดํ•˜์ธ ์‚ฌ์›๋“ค์˜ ์ด๋ฆ„๊ณผ ๋ถ€์„œ๋ฒˆํ˜ธ ๊ธ‰์—ฌ ํ‘œ์‹œ (sub query๋ฅผ ๊ตณ์ด ์‚ฌ์šฉํ•ด์„œ) ๊ธ‰์—ฌ ์ˆœ์œผ๋กœ ์ •๋ ฌํ•ด์„œ ํ‘œ์‹œ

 

 

ROUNDํ•จ์ˆ˜ - ์ •์ˆ˜๋ถ€๋ถ„๊นŒ์ง€ ๋ฐ˜์˜ฌ๋ฆผํ•˜๋Š” ํ•จ์ˆ˜

AVGํ•จ์ˆ˜- ํ‰๊ท ์„ ๊ตฌํ•˜๋Š” ํ•จ์ˆ˜

 

 

MIN, MAX, ํ•จ์ˆ˜


 

 

ํ…Œ์ด๋ธ” ๋ณต์‚ฌํ•ด์„œ ์ƒˆ๋กœ ์ƒ์„ฑํ•˜๊ธฐ (์ œ์•ฝ์กฐ๊ฑด์€ ๋ณต์‚ฌ๋ผ์„œ ์ƒ์„ฑ๋˜์ง€ ์•Š๋Š”๋‹ค.)

์‹คํ–‰ ์ „

 

 

sal์— 1.05 ๊ณฑํ•ด์ค€ ์‹คํ–‰ ๊ฒฐ๊ณผ


 

COMMIT , ROLLBACK

 

12๋ฒˆํ–‰์˜ ๊ธ‰์—ฌ๊ฐ€ 0.5%์ธ์ƒ๋ผ 1365๊ฐ€ ๋œ๊ฑธ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค.

์ปค๋ฐ‹ํ•œ ํ›„ ๋กค๋ฐฑํ•ด๋„ ๋ฐ์ดํ„ฐ๊ฐ€ ๋Œ์•„์˜ค์ง€ ์•Š๋Š”๊ฑธ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค.


 

 

ํ–‰ ์‚ญ์ œํ•˜๊ธฐ

ํ–‰ ์‚ญ์ œ

 

 

 

์‚ญ์ œ๋œ ๊ฒฐ๊ณผ 12ํ–‰์ธ ํ…Œ์ด๋ธ”์ด 11ํ–‰์ด ๋๋‹ค.


 

ํ–‰ ์ถ”๊ฐ€ํ•˜๊ธฐ

๋กค๋ฐฑํ•˜๊ณ  ํ–‰์ถ”๊ฐ€ํ•˜๊ธฐ

 


โ—โ—Java์—์„œ JDBC๋ฅผ ํ†ตํ•˜์—ฌ ์˜ค๋ผํด๊ณผ ์—ฐ๊ฒฐํ•˜๊ธฐโ—โ—

 

 

JavaApp์—์„œ ์˜ค๋ผํด ์—ฐ๊ฒฐ ํ™•์ธํ•˜๊ธฐ

 JDBC ๋“œ๋ผ์ด๋ฒ„๊ฐ€ ์—ฐ๊ฒฐ๋˜์ง€ ์•Š์•„ ์—๋Ÿฌ๊ฐ€ ๋œฌ๊ฑธ ๋ณผ ์ˆ˜ ์žˆ๋‹ค.

 

 

Build Path ํ•ด์ฃผ๊ธฐ

 

 

 

 

 

JavaWeb์—์„œ ์˜ค๋ผํด ์—ฐ๊ฒฐ ํ™•์ธํ•˜๊ธฐ

[WEB-INF] - [lib]ํด๋”์— jar ํŒŒ์ผ์„ ๋„ฃ์–ด์•ผํ•œ๋‹ค.

 

 

 

์„œ๋ธ”๋ฆฟ์—์„œ Oracle Database ์—ฐ๋™ ํ™•์ธํ•ด ๋ณด๊ธฐ

 

 

 

์‹คํ–‰๊ฒฐ๊ณผ:

 

๋Œ“๊ธ€