본문 바로가기

전체 글227

[Database] 데이터 모델링 위의 그림은 세계에 존재하는 개념이 데이터베이스로 구축되는 과정을 보여준다. 데이터 모델리은 현실 세계의 복잡한 개념을 단순화하고 추상화 시켜 데이터베이스화하는 과정이다. 최종적으로 구축된 데이터베이스는 현실 세계의 대상이 되었던 개념과 일치해야 한다. 데이터베이스의 생명주기 1. 요구사항 수집 및 분석 사용자들의 요구사항을 듣고 분석하여 데이터베이스 구축의 범위를 정하는 단계 2. 설계 분석된 요구사항을 기초로 주요 개념과 업무 프로세스 등을 식별하고, 사용하는 DBMS의 종류에 맞게 변환한 후, 데이터베이스 스키마를 도출함. 3. 구현 설계 단계에서 생성한 스키마를 실제 DBMS에 적용하여 테이블 및 관련 객체를 만듦. 4. 운영 구현된 데이터베이스를 기바으로 소프트웨어를 구축하여 서비스를 제공함. .. 2023. 5. 31.
[Database/Oracle] SQL 내장함수, NULL값 처리, ROWNUM SQL에서는 함수의 개념을 사용하는데 수학의 함수와 마찬가지로 특정 값이나 열의 값을 입력받아 그 값을 계산하여 결과 값을 돌려줌 SQL의 함수는 DBMS가 제공하는 내장함수와 사용자가 필요에 따라 직접 만드는 사용자 정의 함수로 나뉨 SQL 내장함수 SQL 내장 함수는 상수나 속성 이름을 입력 값으로 받아 단일 값을 결과로 변환함 모든 내장 함수는 최초에 선언될 때 유효한 입력 값을 받아야 함. 1. 숫자 함수 1. ABS 함수: 절댓값을 구하는 함수 예제) -78과 +78의 절댓값을 구하시오 2. ROUND 함수: 반올림한 값을 구하는 함수 예제) 4.875를 소수 첫째 자리까지 반올림한 값을 구하시오. 3. 숫자 함수의 연산 예제) 고객별 평균 주문 금액을 백원 단위로 반올림한 값을 구하시오. 2... 2023. 4. 17.
[Database] 키와 무결성 제약 조건 데이터를 저장하는 데 있어서 데이터베이스는 일관성을 유지하고, 중복을 제거하는 등 데이터의 신뢰도를 유지해야 한다. 따라서 데이터의 삽입, 삭제, 수정 시 여러 가지 제약조건이 따른다. 1. 키 관계 데이터베이스에서 키는 릴레이션에서 특정 튜플을 식별할 때 사용하는 속성 혹은 속성의 집합이다. 릴레이션은 중복된 튜플을 허용하지 않기 때문에 각각의 튜플에 포함된 속성 중 어느 하나는 값이 달라야 한다. 즉, 키가 되는 속성은 반드시 값이 달라서 튜플들을 서로 구별할 수 있어야 한다. 위 사진은 마당서점 데이터의 일부이다. 이 테이블들을 중심으로 키의 개념과 제약 조건에 대해 알아보자. 슈퍼키(Super Key) 슈퍼키는 튜플을 유일하게 식별할 수 있는 하나의 속성 혹은 속성의 집합을 말한다. 고객 릴레이션.. 2023. 4. 10.
[React] React로 간단한 H&M 사이트 만들기1 오늘은 React로 쇼핑몰 사이트인 H&M 사이트를 약간 간단한 버젼으로 만들어 볼 것이다. 우선 개발 순서는 아래와 같다. 1. 페이지는 총 전체 상품 페이지, 로그인 페이지, 상품상세 페이지 3개가 있다. 2. 전체 상품페이지에서 전체 상품을 볼 수 있다. 3. 로그인 버튼을 누르면 로그인 페이지가 나온다. 4. 상품 디테일을 눌렀으나. 로그인이 되어있지 않은 경우 로그인 페이지가 먼저 나온다. 5. 로그인이 되어있을 경우에는 상품 디테일 페이지를 볼 수 있다. 6. 로그아웃 버튼을 클릭하면 로그아웃이 된다. 7. 로그아웃이 되면 상품 디테일페이지를 볼 수 없으며 다시 로그인 페이지가 보인다. 8. 로그인을 하면 로그아웃 버튼이 보이고 로그아웃을 하면 로그인 버튼이 보인다. 9. 검색창을 통해 상품을.. 2023. 3. 20.
[React] API로 날씨 앱 만들기 3(OpenWeather API 사용) https://conquer-it.tistory.com/195 API로 날씨 앱 만들기 2(OpenWeather API 사용) [React] API로 날씨 앱 만들기 2(OpenWeather API 사용) https://conquer-it.tistory.com/194 API로 날씨 앱 만들기 1(OpenWeather API 사용) 4. 현재 위치한 날씨 데이터 보여주기 저번까지 동작은 하지 않는 UI까지 만들었다. 이제 API를 통해 이 UI가 동작하게 만들 차례 conquer-it.tistory.com 6. 도시별 날씨 가져오기 우선 여러 도시의 날씨를 불러오기 위해 App.js에서 city라는 state를 만든다. const [city, setCity] = useState(""); 그 후에 setCi.. 2023. 3. 1.
[Database] 정규화(Normalization) 정규화란? 함수적 종속성 등의 종속성 이론을 이용하여 잘못 설계된 관계형 스키마를 더 작은 속성의 세트로 쪼개어 바람직한 스키마로 만들어가는 과정이다. 정규형에는 제 1정규형, 제 2정규형, 제 3정규형, BCNF형, 제 4정규형, 제 5정규형이 있으며, 차수가 높아질수록 만족시켜야 할 제약 조건이 늘어난다. 정규화는 데이터베이스의 논리적 설계 단계에서 수행한다. 정규화된 데이터 모델은 일관성, 정확성, 단순성, 비중복성, 안정성 등을 보장한다. 정규화 수준이 높을수록 유연한 데이터 구축이 가능하고 데이터의 정확성이 높아지는 반면 물리적 접근이 복잡하고 너무 많은 조인으로 인해 조회 성능이 저하된다. 정규화의 목적 데이터 구조의 안정성 및 무결성을 유지한다. 효과적인 검색 알고리즘을 생성할 수 있다. 데.. 2023. 2. 27.
[React] reactrouter로 여러개의 웹페이지 만들기 대부분의 웹 사이트는 하나 이상의 웹 페이지를 가지고 있어 여러 페이지를 자유자제로 이동할 수 있다. (예를 들어, 메인 페이지, 로그인 페이지, 상세 보기 페이지 등) 그럼 이런 여러 페이지의 이동을 리액트에서는 어떻게 만들 수 있을까? 바로 *react router를 사용하면 웹페이지 사이의 이동을 자유자제로 할 수 있다. https://reactrouter.com/en/main Home v6.8.1 I'm on v5 The migration guide will help you migrate incrementally and keep shipping along the way. Or, do it all in one yolo commit! Either way, we've got you covered to .. 2023. 2. 20.
[React] API로 날씨 앱 만들기 2(OpenWeather API 사용) https://conquer-it.tistory.com/194 API로 날씨 앱 만들기 1(OpenWeather API 사용) 4. 현재 위치한 날씨 데이터 보여주기 저번까지 동작은 하지 않는 UI까지 만들었다. 이제 API를 통해 이 UI가 동작하게 만들 차례이다. 이 작업은 state를 통해 진행을 해야 한다. weather라는 state를 만들고 이것을 WeatherBox의 props로 전달해 준다. App.js import { useEffect,useState } from 'react'; import './App.css'; import "bootstrap/dist/css/bootstrap.min.css"; import WeatherBox from "./component/WeatherBox"; im.. 2023. 2. 15.
[React] API로 날씨 앱 만들기 1(OpenWeather API 사용) 오늘은 API를 사용하여 날씨 앱을 만들어 보자. 최종 결과물은 아래와 비슷한 구성이 될 것이다. https://velog.io/@gyultang/React%EB%A1%9C-%EB%82%A0%EC%94%A8%EC%95%B1-%EB%A7%8C%EB%93%A4%EA%B8%B0OpenWeather-API React로 날씨앱 만들기(OpenWeather API) 앱이 실행되자마자 유저는 현재 위치의 날씨를 볼 수 있다. (지역, 온도, 날씨 상태)유저는 다른 도시의 버튼을 볼 수 있다. (현재 도시, 4개 도시)유저는 다른 도시 버튼을 클릭하면 해당 도시의 velog.io (내가 만들고 싶은 날씨 앱과 가장 유사해 보여서 참고하게 되었다.) 날씨 앱의 특징 앱이 실행되면 유저 현재 위치의 날씨가 보인다. 날씨 .. 2023. 2. 13.