λ³Έλ¬Έ λ°”λ‘œκ°€κΈ°
728x90
λ°˜μ‘ν˜•
[iOS/UI] CALayerλž€? (feat. μ• λ‹ˆλ©”μ΄μ…˜ 원리) μ•ˆλ…•ν•˜μ„Έμš” Foma πŸ’» μž…λ‹ˆλ‹€! μ €λ²ˆ μ‹œκ°„μ— Core Animation에 λŒ€ν•œ 글을 μž‘μ„±ν–ˆλŠ”λ°μš”. Core Animation을 κ³΅λΆ€ν•˜λ‹€ λ³΄λ‹ˆ Layerκ°€ 거의 전뢀라고 해도 λ˜κ² λ”λΌκ΅¬μš”.. κ·Έλž˜μ„œ λ”°λ‘œ Layer에 λŒ€ν•΄ μ •λ¦¬ν•˜λŠ” 글을 μž‘μ„±ν•˜κ²Œ λ˜μ—ˆμŠ΅λ‹ˆλ‹€. (ν˜Ήμ‹œ Core Animation에 λŒ€ν•΄ 잘 λͺ¨λ₯΄μ‹œλŠ” λΆ„λ“€μœΌ μ—¬κΈ° μ—μ„œ ν™•μΈν•΄μ£Όμ„Έμš”!) λ°”λ‘œ μ‹œμž‘ν• κ²Œμš”~ CALayerλž€? Layer의 사전적 μ˜λ―ΈλŠ” κ²Ή,막,μΈ΅,단계λ₯Ό λœ»ν•©λ‹ˆλ‹€. 사전적 μ˜λ―Έμ™€ 같이 iOSμ—μ„œλ„ μ•„λž˜μ™€ 같이 κ³„μΈ΅μœΌλ‘œ μ‚¬μš©λ˜λŠ” λ˜λŠ”λ°μš”. μ •ν™•ν•˜κ²ŒλŠ” 이미지 기반 컨텐츠λ₯Ό κ΄€λ¦¬ν•˜κ³  ν•΄λ‹Ή μ»¨ν…μΈ μ—μ„œ μ• λ‹ˆλ©”μ΄μ…˜μ„ μˆ˜ν–‰ν•  수 μžˆλ„λ‘ ν•˜λŠ” κ°œμ²΄μž…λ‹ˆλ‹€. 즉, 배경색,ν…Œλ‘λ¦¬ 및 κ·Έλ¦Όμžμ™€ 같이 μ„€μ •ν•  수 μžˆλŠ” 화면에 ν‘œμ‹œν•  수 μžˆλŠ” μ‹œκ°μ  속성을 κ΄€λ¦¬ν•˜λŠ”.. 2022. 3. 17.
[iOS/UI] Core Animationμ΄λž€? (feat. CALayer) μ•ˆλ…•ν•˜μ„Έμš” Foma πŸ’» μž…λ‹ˆλ‹€! μ˜€λŠ˜μ€ μ• λ‹ˆλ©”μ΄μ…˜μ΄ μž‘λ™λ˜λŠ” 원리에 λŒ€ν•΄ 더 깊게 μ΄ν•΄ν•˜κΈ° μœ„ν•΄μ„œ iOSμ—μ„œ μ• λ‹ˆλ©”μ΄μ…˜ μ‹œμŠ€ν…œμ„ λ‹΄λ‹Ήν•˜λŠ” Core Animation에 λŒ€ν•΄μ„œ μ•Œμ•„λ³΄λ €κ³  ν•©λ‹ˆλ‹€. λ°”λ‘œ μ‹œμž‘ν• κ²Œμš”~ Core Animationμ΄λž€? λ·° 및 기타 μ‹œκ°μ  μš”μ†Œμ— μ• λ‹ˆλ©”μ΄μ…˜μ„ μ μš©ν•˜κΈ° μœ„ν•œ λ²”μš© μ‹œμŠ€ν…œ κ·Έλž˜ν”½ λ Œλ”λ§ 및 μ• λ‹ˆλ©”μ΄μ…˜ 인프라 뷰와 ν†΅ν•©λ˜μ–΄ μ½˜ν…μΈ  μ• λ‹ˆλ©”μ΄μ…˜μ„ μœ„ν•œ 더 λ‚˜μ€ μ„±λŠ₯κ³Ό 지원을 μ œκ³΅ν•˜λŠ” 기술 μ•„λž˜μ™€ 같이 UIKit 및 AppKit의 근간이 λ˜λŠ” 기술둜 iOS 및 OS Xλ₯Ό 앱을 κ°œλ°œν•˜κ³  μžˆλ‹€λ©΄ 무쑰건 Core Animation을 μ‚¬μš©ν•˜λŠ” κ²ƒμž…λ‹ˆλ‹€. Core Animation을 직접 μ‚¬μš©ν•  ν•„μš”λŠ” μ—†μ§€λ§Œ μ‚¬μš©ν•  λ•Œ Core Animation이 μ–΄λ– ν•œ μ›λ¦¬λ‘œ μˆ˜ν–‰λ˜λŠ”μ§€ 이해할 ν•„μš”.. 2022. 3. 16.
[Angular] NgFormμ΄λž€? (feat. ngModel,ngSubmit,required) ngFormμ΄λž€? μ›ν•˜λŠ” 양식을 λ§Œλ“€μ–΄ 데이터λ₯Ό 전달할 수 있게 λ„μ™€μ£ΌλŠ” μ§€μ‹œμ–΄ 쀑 ν•˜λ‚˜μ΄λ‹€. μ‚¬μš©ν•˜λŠ” 방법을 μ•„λž˜μ™€ 같이 html νŒŒμΌμ— μž‘μ„±ν•œλ‹€. μ—¬κΈ°μ„œ ngSubmit은 양식에 정보λ₯Ό κΈ°μž…ν•˜κ³  ν•΄λ‹Ή 정보(데이터)λ₯Ό μ œμΆœν•  λ•Œ μ‚¬μš©λœλ‹€. ν•΄λ‹Ή 폼 μ•ˆμ— μ›ν•˜λŠ” 정보λ₯Ό κΈ°μž…ν•  elements듀을 λ„£κ³  데이터가 ν•„μš”ν•œ elementsμ—” ngModel μ§€μ‹œμ–΄λ₯Ό μ‚¬μš©ν•œλ‹€. ngModel은 FormControl의 μΌμ’…μœΌλ‘œ 데이터λ₯Ό 바인딩할 λ•Œ μ‚¬μš©ν•˜λŠ” μ§€μ‹œμ–΄λ‹€. app.module.ts ngForm은 FormsModule에 ν¬ν•¨λ˜μ–΄ μžˆλŠ” μ§€μ‹œμ–΄μ΄λ―€λ‘œ FormsModule을 μΆ”κ°€ν•΄μ€˜μ•Ό ν•œλ‹€. @NgModule({ declarations: [AppComponent], imports: [BrowserModule, F.. 2022. 3. 15.
[Angular] λ²„νŠΌ 이벀트 μ μš©ν•΄λ³΄κΈ° (Button Event) app.component.html 1. on-click뒀에 μ‹€ν–‰μ‹œν‚€κ³  싢은 ν•¨μˆ˜ 이름을 적으면 λœλ‹€. 2. (click) 뒀에 μ‹€ν–‰μ‹œν‚€κ³  싢은 ν•¨μˆ˜ 이름을 적으면 λœλ‹€. ShowHi() λ©”μ„œλ“œ 적용 μ‹œμΌœλ³΄κΈ° app.component.ts κ°„λ‹¨ν•˜κ²Œ μ•ŒλŸ¬νŠΈ 창에 인사λ₯Ό 좜λ ₯ν•˜λŠ” ν•¨μˆ˜λ₯Ό λ§Œλ“€μ–΄ μ€€λ‹€. export class AppComponent { public showHi(): void { alert('μ•ˆλ…•ν•˜μ„Έμš”'); } } app.component.html ν•˜μ΄ λ²„νŠΌμ„ λˆ„λ₯΄λ©΄ μ•„λž˜μ™€ 같이 μ•ŒλŸ΄νŠΈ 창이 뜨게 λœλ‹€. 2022. 3. 15.
[SwiftUI] TabView에 λŒ€ν•΄ μ•Œμ•„λ³΄κΈ° (feat. UITabBar) μ•ˆλ…•ν•˜μ„Έμš” Foma πŸ’» μž…λ‹ˆλ‹€! μ˜€λŠ˜μ€ SwiftUIμ—μ„œ νƒ­λ·°λ₯Ό λ§Œλ“œλŠ” 방법에 λŒ€ν•΄μ„œ μ•Œμ•„λ³΄λ €κ³  ν•©λ‹ˆλ‹€. (UIKit에선 UITabBarλ₯Ό λœ»ν•©λ‹ˆλ‹€.) λ°”λ‘œ μ‹œμž‘ν• κ²Œμš”~ TabView Contents SwiftUIμ—μ„œ νƒ­λ·°λ₯Ό μ μš©ν•˜λŠ” 방법은 λ„ˆλ¬΄ λ„ˆλ¬΄ κ°„λ‹¨ν•©λ‹ˆλ‹€. μ•„λž˜μ™€ 같이 TabView둜 감싸고 νƒ­λ·° μ•ˆμ— λ“€μ–΄κ°ˆ 뷰듀을 λ„£μœΌλ©΄ λ©λ‹ˆλ‹€. TabView { View1() View2() View3() ... } TabView Item ν•˜μ§€λ§Œ μ•„λž˜μ™€ 같이 μ„€μ •ν•˜λ©΄ 아직 νƒ­λ·°κ°€ μ‘΄μž¬ν•˜μ§€ μ•ŠλŠ” κ²ƒμ²˜λŸΌ λ³΄μ΄λŠ”λ°μš”. TabView { LoginView() HelloView() SettingView() } μ΄μœ λŠ” 이미 νƒ­λ·°κ°€ μ‘΄μž¬ν•˜μ§€λ§Œ νƒ­λ·°λ₯Ό λ‚˜νƒ€λ‚΄λŠ” μ•„μ΄ν…œμ„ μ„ΈνŒ…ν•΄μ£Όμ§€ μ•Šμ•˜κΈ° λ•Œλ¬Έμž…λ‹ˆλ‹€. 고둜 λ‹€μŒκ³Ό 같이 νƒ­μ•„μ΄ν…œ.. 2022. 3. 10.
[TS] νƒ€μž…μŠ€ν¬λ¦½νŠΈ(TypeScript)λž€? (feat. μ¨μ•Όν•˜λŠ” 이유) νƒ€μž…μŠ€ν¬λ¦½νŠΈ(TypeScript)λž€? νƒ€μž…μŠ€ν¬λ¦½νŠΈλŠ” μžλ°”μŠ€ν¬λ¦½νŠΈμ˜ μŠˆνΌμ…‹μΈ μ˜€ν”ˆμ†ŒμŠ€ ν”„λ‘œκ·Έλž˜λ° 언어이닀. λ§ˆμ΄ν¬λ‘œμ†Œν”„νŠΈμ—μ„œ 개발, μœ μ§€ν•˜κ³  있으며 μ—„κ²©ν•œ 문법을 μ§€μ›ν•œλ‹€. C#의 λ¦¬λ“œ μ•„ν‚€ν…νŠΈμ΄μž 델파이, 터보 파슀칼의 μ°½μ‹œμžμΈ Anders Hejlsbergκ°€ κ°œλ°œμ— μ°Έμ—¬ν•œλ‹€. ν΄λΌμ΄μ–ΈνŠΈ μ‚¬μ΄λ“œμ™€ μ„œλ²„ μ‚¬μ΄λ“œλ₯Ό μœ„ν•œ κ°œλ°œμ— μ‚¬μš©ν•  수 μžˆλ‹€. νƒ€μž…μŠ€ν¬λ¦½νŠΈλŠ” μžλ°”μŠ€ν¬λ¦½νŠΈ 엔진을 μ‚¬μš©ν•˜λ©΄μ„œ μ»€λ‹€λž€ μ• ν”Œλ¦¬μΌ€μ΄μ…˜μ„ κ°œλ°œν•  수 있게 μ„€κ³„λœ 언어이닀.μžλ°”μŠ€ν¬λ¦½νŠΈμ˜ μŠˆνΌμ…‹μ΄κΈ° λ•Œλ¬Έμ— μžλ°”μŠ€ν¬λ¦½νŠΈλ‘œ μž‘μ„±λœ ν”„λ‘œκ·Έλž¨μ΄ νƒ€μž…μŠ€ν¬λ¦½νŠΈ ν”„λ‘œκ·Έλž¨μœΌλ‘œλ„ λ™μž‘ν•œλ‹€. νƒ€μž…μŠ€ν¬λ¦½νŠΈμ—μ„œ μžμ‹ μ΄ μ›ν•˜λŠ” νƒ€μž…μ„ μ •μ˜ν•˜κ³  ν”„λ‘œκ·Έλž˜λ°μ„ ν•˜λ©΄ μžλ°”μŠ€ν¬λ¦½νŠΈλ‘œ μ»΄νŒŒμΌλ˜μ–΄ μ‹€ν–‰ν•  수 μžˆλ‹€. νƒ€μž…μŠ€ν¬λ¦½νŠΈλŠ” λͺ¨λ“  운영 체제, λͺ¨λ“  λΈŒλΌμš°μ €, λͺ¨λ“  ν˜ΈμŠ€νŠΈμ—.. 2022. 3. 8.
[Swift] ν”„λ‘œκ·Έλž˜λ¨ΈμŠ€ μ˜¬λ°”λ₯Έ κ΄„ν˜Έμ˜ 갯수 Problem μ½”λ”©ν…ŒμŠ€νŠΈ μ—°μŠ΅ - μ˜¬λ°”λ₯Έ κ΄„ν˜Έμ˜ 갯수 μ˜¬λ°”λ₯Έ κ΄„ν˜Έλž€ (())λ‚˜ ()와 같이 μ˜¬λ°”λ₯΄κ²Œ λͺ¨λ‘ λ‹«νžŒ κ΄„ν˜Έλ₯Ό μ˜λ―Έν•©λ‹ˆλ‹€. )(λ‚˜ ())() 와 같은 κ΄„ν˜ΈλŠ” μ˜¬λ°”λ₯΄μ§€ μ•Šμ€ κ΄„ν˜Έκ°€ λ©λ‹ˆλ‹€. κ΄„ν˜Έ 쌍의 개수 n이 μ£Όμ–΄μ§ˆ λ•Œ, n개의 κ΄„ν˜Έ 쌍으둜 λ§Œλ“€ 수 μžˆλŠ” λͺ¨ programmers.co.kr Solution ν•΄λ‹Ή λ¬Έμ œλŠ” λ‹€μ΄λ‚˜λ―Ή ν”„λ‘œκ·Έλž˜λ°μ„ μ΄μš©ν•΄μ•Ό ν•˜λŠ” λ¬Έμ œμž…λ‹ˆλ‹€. λ‹€μ΄λ‚˜λ―Ή ν”„λ‘œκ·Έλž˜λ°μœΌλ‘œ κ΄„ν˜Έκ°€ 1쌍인 것뢀터 주어진 nμŒκΉŒμ§€ μ°¨κ·Ό μ°¨κ·Ό ν’€μ–΄λ‚˜κ°€μ•Ό ν•˜λŠ”λ°μš”. 직접 ꡬ해보기 κ΄„ν˜Έκ°€ 1쌍일 땐 경우의 μˆ˜κ°€ -> ()만 μ‘΄μž¬ν•©λ‹ˆλ‹€. κ΄„ν˜Έκ°€ 2쌍일 경우 -> ()(),(()) μ΄λ ‡κ²Œ 두 κ°œκ°€ μ‘΄μž¬ν•©λ‹ˆλ‹€. κ΄„ν˜Έκ°€ 3쌍일 경우 -> ((())), (()()), (())(), ()(()),()()() μ΄λ ‡κ²Œ 5.. 2022. 3. 6.
[Oracle] νŒ¨ν‚€μ§€(Package)λž€? (feat. C.R.U.D) μ•ˆλ…•ν•˜μ„Έμš” Foma πŸ’» μž…λ‹ˆλ‹€! μ˜€λŠ˜μ€ μ—¬λŸ¬ ν•¨μˆ˜μ™€ ν”„λ‘œμ‹œμ €λ₯Ό λ¬Άμ–΄μ„œ μ‚¬μš©ν•  수 μžˆλŠ” νŒ¨ν‚€μ§€μ— λŒ€ν•΄ μ•Œμ•„λ³΄λ„λ‘ ν•˜κ² μŠ΅λ‹ˆλ‹€. λ°”λ‘œ μ‹œμž‘ν• κ²Œμš”~ νŒ¨ν‚€μ§€(Package)λž€? νŒ¨ν‚€μ§€λŠ” ν”„λ‘œμ‹œμ € λ˜λŠ” ν•¨μˆ˜ λ“± μ„œλΈŒ ν”„λ‘œκ·Έλž¨μ„ ν•˜λ‚˜λ‘œ 묢어놓은 κ°μ²΄μž…λ‹ˆλ‹€. 예λ₯Ό λ“€λ©΄ μˆ˜ν•™μ— κ΄€ν•œ ν•¨μˆ˜λ“€μ„ λͺ¨μ•„ 놓은 MATHλΌλŠ” νŒ¨ν‚€μ§€κ°€ 있고 κ·Έ μ•ˆμ— 연산을 ν•˜λŠ” ν•¨μˆ˜ λ˜λŠ” ν”„λ‘œμ‹œμ € 등이 μžˆλŠ” κ²ƒμž…λ‹ˆλ‹€. νŒ¨ν‚€μ§€λŠ” μ»΄νŒŒμΌμ„ κ±°μ³μ„œ μ‹€ν–‰λ˜λ©°, λ‹€λ₯Έ νŒ¨ν‚€μ§€λ₯Ό μ°Έμ‘°,μ‹€ν–‰ν•  수 μžˆμŠ΅λ‹ˆλ‹€. μž₯점 λͺ¨λ“ˆν™” ν•¨μˆ˜μ™€ ν”„λ‘œμ‹œμ € λ“± μ„œλΈŒ ν”„λ‘œκ·Έλž¨μ„ ν•œ 곳에 λͺ¨μ•„μ„œ μ‚¬μš©ν•  수 μžˆμœΌλ―€λ‘œ 관리 및 μ‚¬μš©ν•˜κΈ°κ°€ μˆ˜μ›”ν•©λ‹ˆλ‹€. μΊ‘μŠν™” μ„ μ–ΈλΆ€λ§Œ 외뢀에 곡개되고, 본문은 감좰져 있기 λ•Œλ¬Έμ— 접근을 μ œμ–΄ν•˜μ—¬ μ˜€μš©μ„ λ°©μ§€ν•©λ‹ˆλ‹€. μ„±λŠ₯ νŒ¨ν‚€μ§€μ˜ μ„œλΈŒ ν”„λ‘œκ·Έλž¨ 호좜 μ‹œ νŒ¨ν‚€μ§€ .. 2022. 3. 5.
[Oracle] ν•¨μˆ˜(Function)와 ν”„λ‘œμ‹œμ €(Procedure) 차이 μ•ˆλ…•ν•˜μ„Έμš” Foma πŸ’» μž…λ‹ˆλ‹€. μ§€λ‚œ 글듀에 ν”„λ‘œμ‹œμ €μ™€ ν•¨μˆ˜μ— λŒ€ν•΄ μ •λ¦¬ν–ˆμ—ˆλŠ”λ°μš”. μ–Έλœ» 보기엔 ν•¨μˆ˜μ™€ ν”„λ‘œμ‹œμ €κ°€ 거의 λ˜‘κ°™λ‹€κ³  μƒκ°λ˜λ”λΌκ΅¬μš”. (ν•¨μˆ˜ 글은 μ—¬κΈ° μ—μ„œ ν”„λ‘œμ‹œμ € 글을 μ—¬κΈ° μ—μ„œ ν™•μΈν•˜μ‹œλ©΄ λ©λ‹ˆλ‹€.) κ·Έλž˜μ„œ ν•¨μˆ˜μ™€ ν”„λ‘œμ‹œμ €μ˜ 차이점이 μ–΄λ–€ 것이 μžˆλŠ”μ§€ 더 μžμ„Ένžˆ μ•Œμ•„λ³΄λ €κ³  글을 μ •λ¦¬ν•˜κ²Œ λ˜μ—ˆμŠ΅λ‹ˆλ‹€. λ°”λ‘œ μ‹œμž‘ν• κ²Œμš”~ ν•¨μˆ˜μ™€ ν”„λ‘œμ‹œμ €μ˜ 차이 ν”„λ‘œμ‹œμ € λ˜ν•œ λ§€κ°œλ³€μˆ˜λ₯Ό λ°›μ•„ μ—¬λŸ¬ μž‘μ—…μ„ μˆ˜ν–‰ν•˜μ—¬ 값을 λ°˜ν™˜ν•  수 있고, ν•¨μˆ˜ λ˜ν•œ λ§€κ°œλ³€μˆ˜λ₯Ό λ°›μ•„ μ—¬λŸ¬ μž‘μ—…μ„ μˆ˜ν–‰ν•˜μ—¬ 값을 λ°˜ν™˜ν•  수 μžˆμŠ΅λ‹ˆλ‹€. ν•˜μ§€λ§Œ ν•¨μˆ˜μ™€ ν”„λ‘œμ‹œμ €κ°€ λ˜‘κ°™μ€ 것은 μ•„λ‹Œλ°μš”. μ§€κΈˆλΆ€ν„° ν•¨μˆ˜μ™€ ν”„λ‘œμ‹œμ €μ˜ 차이점에 λŒ€ν•΄μ„œ λ‚˜μ—΄ν•˜κ² μŠ΅λ‹ˆλ‹€. 의미 ν”„λ‘œμ‹œμ € 일련의 쿼리λ₯Ό 마치 ν•˜λ‚˜μ˜ ν•¨μˆ˜μ²˜λŸΌ μ‹€ν–‰ν•˜κΈ° μœ„ν•œ 쿼리의 집합이며, 일련의 μž‘μ—…μ„ μ •.. 2022. 3. 5.
[Oracle] ν•¨μˆ˜(Function)λž€? (feat. C.R.U.D) μ•ˆλ…•ν•˜μ„Έμš” Foma πŸ’» μž…λ‹ˆλ‹€! μ˜€λŠ˜μ€ μ—¬λŸ¬ μž‘μ—…μ„ ν•œλ²ˆμ— ν•  수 μžˆλŠ” ν•¨μˆ˜μ— λŒ€ν•΄μ„œ μ•Œμ•„λ³΄κ² μŠ΅λ‹ˆλ‹€. λ°”λ‘œ μ‹œμž‘ν• κ²Œμš”~ ν•¨μˆ˜(Function)μ΄λž€? λ°μ΄ν„°λ² μ΄μŠ€μ—μ„œ ν•¨μˆ˜λŠ” 일반적인 ν”„λ‘œκ·Έλž˜λ°μ—μ„œμ˜ ν•¨μˆ˜μ™€ λ™μΌν•©λ‹ˆλ‹€. λ§€κ°œλ³€μˆ˜λ₯Ό λ°›μ•„ νŠΉμ • 계산(μž‘μ—…)을 μˆ˜ν–‰ν•˜κ³  κ²°κ³Όλ₯Ό λ°˜ν™˜ν•˜λŠ” ꡬ쑰둜 λ˜μ–΄ μžˆμŠ΅λ‹ˆλ‹€. 즉, νŠΉμ • λ™μž‘μ„ μˆ˜ν–‰ν•˜λŠ” μ½”λ“œ 뢀뢄을 μ˜λ―Έν•©λ‹ˆλ‹€. λ°μ΄ν„°λ² μ΄μŠ€ λ‚΄μ—μ„œλŠ” νŠΉμ • κ°’(λ§€κ°œλ³€μˆ˜)을 μž…λ ₯ λ°›μ•„ μ—¬λŸ¬ 쿼리문을 μž‘μ—…ν•œ λ’€ λ°˜ν™˜ν•˜λŠ” κΈ°λŠ₯을 μ˜λ―Έν•©λ‹ˆλ‹€. (μ–Έλœ» 보기엔 ν”„λ‘œμ‹œμ €μ™€ λ™μΌν•˜λ‹€κ³  λŠλ‚„ 수 μžˆλŠ”λ°μš”. 차이점은 μ—¬κΈ° μ—μ„œ ν™•μΈν•˜μ‹œλ©΄ λ©λ‹ˆλ‹€.) 생성 CREATE OR REPLACE FUNCTION ν•¨μˆ˜μ΄λ¦„(νŒŒλΌλ―Έν„°1이름 νƒ€μž…, νŒŒλΌλ―Έν„°2이름 νƒ€μž…...) RETURN λ°˜ν™˜ν• νƒ€μž… IS λ³€μˆ˜ μ„ μ–Έ BEG.. 2022. 3. 5.
[Oracle] 인덱슀(Index)λž€? (feat. C.R.U.D) μ•ˆλ…•ν•˜μ„Έμš” FomaπŸ’» μž…λ‹ˆλ‹€. μ˜€λŠ˜μ€ μ›ν•˜λŠ” 데이터λ₯Ό μ‰½κ²Œ 찾아쀄 수 μžˆλ„λ‘ 미리 정리λ₯Ό ν•΄λ†“λŠ” μΈλ±μŠ€μ— λŒ€ν•΄μ„œ μ•Œμ•„λ³΄λ €κ³  ν•©λ‹ˆλ‹€. λ°”λ‘œ μ‹œμž‘ν• κ²Œμš”~ 인덱슀(Index)λž€? μΈλ±μŠ€λŠ” λ°μ΄ν„°λ² μ΄μŠ€ 뢄야에 μžˆμ–΄μ„œ ν…Œμ΄λΈ”μ— λŒ€ν•œ λ™μž‘μ˜ 속도λ₯Ό λ†’μ—¬μ£ΌλŠ” 자료 ꡬ쑰λ₯Ό μΌμ»«λŠ”λ‹€. μΈλ±μŠ€λŠ” ν…Œμ΄λΈ” λ‚΄μ˜ 1개의 컬럼, ν˜Ήμ€ μ—¬λŸ¬ 개의 μ»¬λŸΌμ„ μ΄μš©ν•˜μ—¬ 생성될 수 μžˆλ‹€. κ³ μ†μ˜ 검색 λ™μž‘λΏλ§Œ μ•„λ‹ˆλΌ λ ˆμ½”λ“œ μ ‘κ·Όκ³Ό κ΄€λ ¨ 효율적인 μˆœμ„œ 맀김 λ™μž‘μ— λŒ€ν•œ 기초λ₯Ό μ œκ³΅ν•œλ‹€. 인덱슀λ₯Ό μ €μž₯ν•˜λŠ” 데 ν•„μš”ν•œ λ””μŠ€ν¬ 곡간은 보톡 ν…Œμ΄λΈ”μ„ μ €μž₯ν•˜λŠ” 데 ν•„μš”ν•œ λ””μŠ€ν¬ 곡간보닀 μž‘λ‹€. (μ™œλƒν•˜λ©΄ 보톡 μΈλ±μŠ€λŠ” ν‚€-ν•„λ“œλ§Œ κ°–κ³  있고, ν…Œμ΄λΈ”μ˜ λ‹€λ₯Έ μ„ΈλΆ€ ν•­λͺ©λ“€μ€ κ°–κ³  μžˆμ§€ μ•ŠκΈ° λ•Œλ¬Έμ΄λ‹€.) κ΄€κ³„ν˜• λ°μ΄ν„°λ² μ΄μŠ€μ—μ„œλŠ” μΈλ±μŠ€λŠ” ν…Œμ΄λΈ” 뢀뢄에 λŒ€ν•œ.. 2022. 3. 5.
[Oracle] 트리거(Trigger)λž€? (feat. C.R.U.D) μ•ˆλ…•ν•˜μ„Έμš” FomaπŸ’» μž…λ‹ˆλ‹€! μ˜€λŠ˜μ€ λ°μ΄ν„°λ² μ΄μŠ€μ—μ„œ μ΄λ²€νŠΈμ— 따라 μžλ™μœΌλ‘œ 싀행될 수 μžˆλŠ” νŠΈλ¦¬κ±°μ— λŒ€ν•΄μ„œ μ•Œμ•„λ³΄λ„λ‘ ν•˜κ² μŠ΅λ‹ˆλ‹€! λ°”λ‘œ μ‹œμž‘ν• κ²Œμš”~ 트리거(TRIGGER)λž€? Trigger의 사전적 λœ»μ€ 총의 λ°©μ•„μ‡ μž…λ‹ˆλ‹€. λ°μ΄ν„°λ² μ΄μŠ€μ—μ„œ 트리거λ₯Ό λœ»ν•˜λŠ” 말은 총의 λ°©μ•„μ‡ λ₯Ό λ‹ΉκΈ°λŠ” 것과 같이 μ–΄λ–€ 이벀트의 μžλ™μœΌλ‘œ μ‹€ν–‰λ˜λŠ” 것을 λœ»ν•©λ‹ˆλ‹€. ꡬ체적으둠 데이터가 μ‚­μ œλ˜μ—ˆμ„ λ•Œ,λ³€κ²½λ˜μ—ˆμ„ λ•Œ, μΆ”κ°€λ˜μ—ˆμ„ λ•Œμ— 따라 트리거λ₯Ό 생성해 μ‹€ν–‰μ‹œν‚¬ 수 μžˆμŠ΅λ‹ˆλ‹€. 생성 트리거 이름을 μ •ν•΄μ€λ‹ˆλ‹€. CREATE OR REPLACE TRIGGER νŠΈλ¦¬κ±°μ΄λ¦„ 트리거λ₯Ό μ–΄λ–€ μ΄λ²€νŠΈμ—(μ‚½μž… λ˜λŠ” μ—…λ°μ΄νŠΈ λ˜λŠ” μ‚­μ œ), μ–Έμ œ(이벀트 λ°œμƒ μ „ λ˜λŠ” 이벀트 λ°œμƒ ν›„) 트리거λ₯Ό λ°œμƒμ‹œν‚¬μ§€ μ •ν•΄μ€λ‹ˆλ‹€. BEFORE|AFTER INSERT.. 2022. 3. 5.
728x90
λ°˜μ‘ν˜•