관리 메뉴

λͺ©λ‘μ „체 κΈ€ (196)

JUINTINATION

SQL ν…ŒμŠ€νŠΈμ™€ 쿼리 μ΅œμ ν™”

SQL ν…ŒμŠ€νŠΈ SQL ν…ŒμŠ€νŠΈλŠ” SQL이 μž‘μ„± μ˜λ„μ— 맞게 μ›ν•˜λŠ” κΈ°λŠ₯을 μˆ˜ν–‰ν•˜λŠ”μ§€ κ²€μ¦ν•˜λŠ” 과정이닀. 단문 SQL은 SQL μ½”λ“œλ₯Ό 직접 μ‹€ν–‰ν•œ ν›„ κ²°κ³Όλ₯Ό ν™•μΈν•˜λŠ” κ²ƒμœΌλ‘œ κ°„λ‹¨νžˆ ν…ŒμŠ€νŠΈκ°€ κ°€λŠ₯ν•˜λ‹€. μ ˆμ°¨ν˜• SQL은 ν…ŒμŠ€νŠΈ 전에 생성을 톡해 ꡬ문 였λ₯˜(Syntax Error)λ‚˜ μ°Έμ‘° 였λ₯˜ μ—¬λΆ€λ₯Ό ν™•μΈν•œλ‹€. μ •μƒμ μœΌλ‘œ μƒμ„±λœ μ ˆμ°¨ν˜• SQL은 디버깅을 톡해 λ‘œμ§μ„ κ²€μ¦ν•˜κ³  κ²°κ³Όλ₯Ό 톡해 μ΅œμ’…μ μœΌλ‘œ ν™•μΈν•œλ‹€. 단문 SQL ν…ŒμŠ€νŠΈ 단문 SQL ν…ŒμŠ€νŠΈλŠ” DDL, DML, DCL이 ν¬ν•¨λ˜μ–΄ μžˆλŠ” SQLκ³Ό TCL(νŠΈλžœμž­μ…˜μ„ μ œμ–΄ν•˜λŠ” COMMIT, ROLLBACK, SAVEPOINT λͺ…λ Ή)을 ν…ŒμŠ€νŠΈν•˜λŠ” κ²ƒμœΌλ‘œ 직접 μ‹€ν–‰ν•˜μ—¬ 결과물을 ν™•μΈν•œλ‹€. DESCRIBE λ˜λŠ” DESC [개체λͺ…] λͺ…λ Ήμ–΄λ₯Ό μ΄μš©ν•˜λ©΄ DDL둜 μž‘μ„±λœ ν…Œμ΄λΈ”..

DBMS와 ORM

DBMS 접속 DBMSλŠ” λ°μ΄ν„°λ² μ΄μŠ€ 관리 μ‹œμŠ€ν…œμ€ λ‹€μˆ˜μ˜ μ‚¬μš©μžλ“€μ΄ λ°μ΄ν„°λ² μ΄μŠ€ λ‚΄μ˜ 데이터λ₯Ό μ ‘κ·Όν•  수 μžˆλ„λ‘ ν•΄μ£ΌλŠ” μ†Œν”„νŠΈμ›¨μ–΄ λ„κ΅¬μ˜ μ§‘ν•©μœΌλ‘œ μ‚¬μš©μžλŠ” DBMS에 μ ‘κ·Όν•˜κΈ° μœ„ν•΄ API λ˜λŠ” API의 μ‚¬μš©μ„ νŽΈλ¦¬ν•˜κΈ° λ„μ™€μ£ΌλŠ” ν”„λ ˆμž„μ›Œν¬ 등을 μ‚¬μš©ν•œλ‹€. μ‘μš© μ‹œμŠ€ν…œμ€ μ‚¬μš©μžλ‘œλΆ€ν„° 맀개 λ³€μˆ˜λ₯Ό 전달받아 SQL을 μ‹€ν–‰ν•˜κ³  DBMSλ‘œλΆ€ν„° 전달받은 κ²°κ³Όλ₯Ό μ‚¬μš©μžμ—κ²Œ μ „λ‹¬ν•˜λŠ” 맀개체 역할을 μˆ˜ν–‰ν•œλ‹€. 인터넷을 톡해 κ΅¬λ™λ˜λŠ” μ›Ή μ‘μš© ν”„λ‘œκ·Έλž¨μ€ μ›Ή μ‘μš© μ‹œμŠ€ν…œμ„ 톡해 DBMS에 μ ‘κ·Όν•œλ‹€. μ›Ή μ‘μš© μ‹œμŠ€ν…œμ€ μ›Ή μ„œλ²„μ™€ μ›Ή μ• ν”Œλ¦¬μΌ€μ΄μ…˜ μ„œλ²„(WAS)둜 κ΅¬μ„±λ˜λ©° μ„œλΉ„μŠ€ 규λͺ¨κ°€ μž‘μ€ 경우 μ›Ή μ„œλ²„μ™€ μ›Ή μ• ν”Œλ¦¬μΌ€μ΄μ…˜ μ„œλ²„λ₯Ό ν†΅ν•©ν•˜μ—¬ ν•˜λ‚˜μ˜ μ„œλ²„λ§ŒμœΌλ‘œ μš΄μš©ν•  수 μžˆλ‹€. μ›Ή μ‘μš© μ‹œμŠ€ν…œμ˜ κ΅¬μ‘°λŠ” μ•„λž˜μ™€ κ°™λ‹€. μ‚¬μš©μžλŠ” μ›Ή μ„œ..

νŠΈλžœμž­μ…˜ 및 CRUD 뢄석

νŠΈλžœμž­μ…˜(Transaction)μ΄λž€? νŠΈλžœμž­μ…˜μ€ λ°μ΄ν„°λ² μ΄μŠ€μ˜ μƒνƒœλ₯Ό λ³€ν™˜μ‹œν‚€λŠ” ν•˜λ‚˜μ˜ 논리적 κΈ°λŠ₯을 μˆ˜ν–‰ν•˜κΈ° μœ„ν•œ μž‘μ—…μ˜ λ‹¨μœ„ λ˜λŠ” ν•œκΊΌλ²ˆμ— λͺ¨λ‘ μˆ˜ν–‰λ˜μ–΄μ•Ό ν•  일련의 연산듀을 μ˜λ―Έν•œλ‹€. νŠΈλžœμž­μ…˜μ€ λ°μ΄ν„°λ² μ΄μŠ€ μ‹œμŠ€ν…œμ—μ„œ 병행 μ œμ–΄ 및 회볡 μž‘μ—… μ‹œ μ²˜λ¦¬λ˜λŠ” μž‘μ—…μ˜ 논리적 λ‹¨μœ„λ‘œ μ‚¬μš©λœλ‹€. νŠΈλžœμž­μ…˜μ€ μ‚¬μš©μžκ°€ μ‹œμŠ€ν…œμ— λŒ€ν•œ μ„œλΉ„μŠ€ μš”κ΅¬ μ‹œ μ‹œμŠ€ν…œμ΄ μ‘λ‹΅ν•˜κΈ° μœ„ν•œ μƒνƒœ λ³€ν™˜ κ³Όμ •μ˜ μž‘μ—… λ‹¨μœ„λ‘œ μ‚¬μš©λœλ‹€. νŠΈλžœμž­μ…˜μ˜ νŠΉμ„± λ‹€μŒμ€ λ°μ΄ν„°μ˜ 무결성(Integrity)을 보μž₯ν•˜κΈ° μœ„ν•΄ DBMS의 νŠΈλžœμž­μ…˜μ΄ κ°€μ Έμ•Ό ν•  νŠΉμ„±μ΄λ‹€. Atomicity(μ›μžμ„±) νŠΈλžœμž­μ…˜μ˜ 연산은 λ°μ΄ν„°λ² μ΄μŠ€μ— λͺ¨λ‘ λ°˜μ˜λ˜λ„λ‘ Commit λ˜κ±°λ‚˜ μ „ν˜• λ°˜μ˜λ˜μ§€ μ•Šλ„λ‘ Rollback λ˜μ–΄μ•Ό ν•œλ‹€. νŠΈλžœμž­μ…˜ λ‚΄μ˜ λͺ¨λ“  λͺ…령은 λ°˜λ“œμ‹œ μˆ˜ν–‰λ˜..

μ •κ·œν™”(Normalization)와 λ°˜μ •κ·œν™”(Denormalization)

μ •κ·œν™”λž€? ν•¨μˆ˜μ  쒅속성 λ“±μ˜ 쒅속성 이둠을 μ΄μš©ν•˜μ—¬ 잘λͺ» μ„€κ³„λœ κ΄€κ³„ν˜• μŠ€ν‚€λ§ˆλ₯Ό 더 μž‘μ€ μ†μ„±μ˜ μ„ΈνŠΈλ‘œ μͺΌκ°œμ–΄ λ°”λžŒμ§ν•œ μŠ€ν‚€λ§ˆλ‘œ λ§Œλ“€μ–΄κ°€λŠ” κ³Όμ • ν•˜λ‚˜μ˜ 쒅속성이 ν•˜λ‚˜μ˜ λ¦΄λ ˆμ΄μ…˜μ— ν‘œν˜„λ  수 μžˆλ„λ‘ λΆ„ν•΄ν•΄κ°€λŠ” 과정이라 ν•  수 있음 λ°μ΄ν„°λ² μ΄μŠ€μ˜ 논리적 섀계 λ‹¨κ³„μ—μ„œ μˆ˜ν–‰ν•˜λ©° 논리적 처리 및 ν’ˆμ§ˆμ— 큰 영ν–₯을 λ―ΈμΉ¨ μ •κ·œν™”λœ 데이터 λͺ¨λΈμ€ 일관성, μ •ν™•μ„±, λ‹¨μˆœμ„±, 비쀑볡성, μ•ˆμ •μ„± 등을 보μž₯ μ •κ·œν™” μˆ˜μ€€μ΄ λ†’μ„μˆ˜λ‘ μœ μ—°ν•œ 데이터 ꡬ좕이 κ°€λŠ₯ν•˜λ©° λ°μ΄ν„°μ˜ 정확성이 λ†’μ•„μ§€λŠ” 반λͺ… 물리적 접근이 λ³΅μž‘ν•˜κ³  λ„ˆλ¬΄ λ§Žμ€ 쑰인으둜 인해 쑰회 μ„±λŠ₯이 μ €ν•˜λ¨ μ •κ·œν™”μ˜ λͺ©μ  데이터 ꡬ쑰의 μ•ˆμ •μ„± 및 무결성 μœ μ§€ 효과적인 검색 μ•Œκ³ λ¦¬μ¦˜ 생성 κ°€λŠ₯ 데이터 쀑볡을 λ°°μ œν•˜μ—¬ 이상(Anomaly)의 λ°œμƒ 방지 및 자료 μ €μž₯ κ³΅κ°„μ˜ ..

κ΄€κ³„λŒ€μˆ˜ 및 관계해석

κ΄€κ³„λŒ€μˆ˜ κ΄€κ³„ν˜• λ°μ΄ν„°λ² μ΄μŠ€μ—μ„œ μ›ν•˜λŠ” 정보와 κ·Έ 정보λ₯Ό κ²€μƒ‰ν•˜κΈ° μœ„ν•΄μ„œ μ–΄λ–»κ²Œ μœ λ„ν•˜λŠ”κ°€λ₯Ό κΈ°μˆ ν•˜λŠ” 절차적인 μ–Έμ–΄ κ΄€κ³„λŒ€μˆ˜λŠ” λ¦΄λ ˆμ΄μ…˜μ„ μ²˜λ¦¬ν•˜κΈ° μœ„ν•΄ μ—°μ‚°μžμ™€ μ—°μ‚°κ·œμΉ™μ„ μ œκ³΅ν•˜λŠ” μ–Έμ–΄λ‘œ ν”Όμ—°μ‚°μžκ°€ λ¦΄λ ˆμ΄μ…˜μ΄κ³  결과도 λ¦΄λ ˆμ΄μ…˜μ΄λ‹€. μ§ˆμ˜μ— λŒ€ν•œ ν•΄λ₯Ό κ΅¬ν•˜κΈ° μœ„ν•΄ μˆ˜ν–‰ν•΄μ•Ό ν•  μ—°μ‚°μ˜ μˆœμ„œλ₯Ό λͺ…μ‹œν•œλ‹€. κ΄€κ³„λŒ€μˆ˜μ—λŠ” 관계 λ°μ΄ν„°λ² μ΄μŠ€μ— μ μš©ν•˜κΈ° μœ„ν•΄ νŠΉλ³„νžˆ κ°œλ°œν•œ 순수 관계 μ—°μ‚°μžμ™€ μˆ˜ν•™μ  집합 μ΄λ‘ μ—μ„œ μ‚¬μš©ν•˜λŠ” 일반 집합 μ—°μ‚°μžκ°€ μžˆλ‹€. 순수 관계 μ—°μ‚°μž : Select, Project, Join, Division 일반 집합 μ—°μ‚°μž : UNION(합집합), INTERSECTION(ꡐ집합), DIFFERENCE(차집합), CARTESIAN PRODUCT(ꡐ차곱) 순수 관계 μ—°μ‚°μž Select - σ λ¦΄λ ˆμ΄μ…˜μ—..

κ΄€κ³„ν˜• λ°μ΄ν„°λ² μ΄μŠ€

κ΄€κ³„ν˜• λ°μ΄ν„°λ² μ΄μŠ€μ˜ Relation ꡬ쑰 λ¦΄λ ˆμ΄μ…˜μ€ 데이터듀을 ν‘œ(Table) ν˜•νƒœλ‘œ ν‘œν˜„ν•œ κ²ƒμœΌλ‘œ ꡬ쑰λ₯Ό λ‚˜νƒ€λ‚΄λŠ” λ¦΄λ ˆμ΄μ…˜ μŠ€ν‚€λ§ˆμ™€ μ‹€μ œ 값듀인 λ¦΄λ ˆμ΄μ…˜ μΈμŠ€ν„΄μŠ€λ‘œ κ΅¬μ„±λœλ‹€. νŠœν”Œ(tuple) λ¦΄λ ˆμ΄μ…˜μ„ κ΅¬μ„±ν•˜λŠ” 각각의 ν–‰ μ†μ„±μ˜ λͺ¨μž„μœΌλ‘œ κ΅¬μ„±λ˜λ©° 파일 κ΅¬μ‘°μ—μ„œ λ ˆμ½”λ“œμ™€ 같은 의미 νŠœν”Œμ˜ 수λ₯Ό 카디널리티(Cardinality) λ˜λŠ” 기수, λŒ€μ‘μˆ˜ 라고도 함 μœ„ 사진 λ¦΄λ ˆμ΄μ…˜μ—μ„œ μΉ΄λ””λ„λ¦¬ν‹°λŠ” 4이닀. 속성(Attribute) λ°μ΄ν„°λ² μ΄μŠ€λ₯Ό κ΅¬μ„±ν•˜λŠ” κ°€μž₯ μž‘μ€ 논리적 λ‹¨μœ„λ‘œ 개체의 νŠΉμ„±μ„ 기술 파일 κ΅¬μ‘°μ—μ„œ 데이터 ν•­λͺ© λ˜λŠ” 데이터 ν•„λ“œμ— ν•΄λ‹Ή μ†μ„±μ˜ 수λ₯Ό 디그리(Degree) λ˜λŠ” 차수라고 함 μœ„ 사진 λ¦΄λ ˆμ΄μ…˜μ—μ„œ 차수(디그리)λŠ” 5이닀. 도메인(Domain) ν•˜λ‚˜μ˜ μ• νŠΈλ¦¬λ·°νŠΈκ°€ μ·¨ν•  수 μžˆλŠ” 같은 타..