분류 전체보기
-
[MSSQL] 10일 만에 마스터하는 MS SQL 실무 9, 10 편Backend/database 2024. 2. 18. 14:07
사용자 정의 함수 scalar 함수 > SUM이나 AVG 처럼 값을 반환하는 함수 CREATE FUNCTION ( @ // 값을 담을 수 있는 매개변수, 필요하지 않으면 생략 가능 ) RETURNS AS BEGIN RETURN END TABLE 함수 CREATE FUNCTION ( @ ) RETURNS TABLE AS RETURN () CREATE FUNCTION ( @ ) RETURNS @RETURN_TABLE TABLE ( -- 어떤 형식의 테이블을 반환할 지 명명 ) AS BEGIN INSERT INTO @RETURN_TABLE -- 그 형식에 일치하는 데이터를 INSERT 하면 해당 값이 반환됨 RETURN END 저장 프로시저 > SQL에서 제공하는 프로그래밍 기능 > 함수보다 폭넓은 동작을 수..
-
[MSSQL] 10일 만에 마스터하는 MS SQL 실무 7, 8편Backend/database 2024. 2. 17. 13:28
https://www.youtube.com/watch?v=SJwE-Izf6uY&list=PL1VTPqi5Xgu9pr3oK_j4ranMGEn6fKMFp&index=9 1. SQL 데이터 타입 > 내가 사용하는 테이블에 존재하는 열들의 데이터 타입을 알아야 데이터를 어떻게 처리해야 하는지 알 수 있음 N > 정해진 크기 보다 문자열이 적으면 나머지를 공백으로 채운다. VARCHAR > 정해진 크기보다 문자열이 적으면 문자열 크기만큼 된다. NCHAR , NVARCHAR > 앞에 N이 붙은 이유 : 영어가 아닌 다른 국가 언어를 저장하기 위함 숫자 유형 > 실수도 정수로 통일한다면 성능 측면에서 좋지 않다. DATETIME > 최소 단위가 3.33MS 이다. DATETIME2 > 단위가 DATETIME 보다 ..
-
[MSSQL] 10일 만에 마스터하는 MS SQL 실무 5,6 편Backend/database 2024. 2. 15. 20:18
https://www.youtube.com/watch?v=XA6iE1iYkPM&list=PL1VTPqi5Xgu9pr3oK_j4ranMGEn6fKMFp&index=7 JOIN이란? SQL의 가장 강력한 기능 SQL SELECT 로 수행할 수 있는 매우 중요한 작업 JOIN을 사용하는 방법 하나의 열로 할 수도 있고 여러 열을 기준으로 할 수도 있음 테이블 이름이 긴 경우 ALIAS를 지정하여 간단하게 작성 JOIN의 종류 INNER JOIN 일반적인 JOIN 두 테이블에 모두 존재하는 행을 기준으로 결합 > JOIN의 기본으로 INNER를 생략할 수 있다. LEFT JOIN 왼쪽 테이블의 모든 레코드는 일단 가져오고 일치하는 오른쪽 레코드를 붙여줌 오른쪽 테이블에 데이터가 없으면 NULL(비어있음) 을 채..
-
[MSSQL] 10일 만에 마스터하는 MS SQL 실무_1~4편Backend/database 2024. 2. 13. 23:04
https://www.youtube.com/watch?v=SRYtyH-Cnq0&list=PL1VTPqi5Xgu9pr3oK_j4ranMGEn6fKMFp&index=3 위의 강의를 보고 정리한 내용입니다! 1. 데이터 사용자가 많아 수많은 사람이 동시에 접속하는 경우 누구의 요청에 더 빠르게 대응할 것인가? > 중요도에 따라 다르게 대응 2. 데이터를 조회하는 도중에 다른 사람이 조회 중인 데이터를 새로운 데이터로 갱신/삭제하는 경우 내가 요청한 시간에 존재했던 데이터를 기준으로 보여줄 것인가? vs 최신 데이터로 다시 보여줄 것인가? 3. 정전 등 예상하지 못한 사건으로 데이터에 손상이 오는 경우 > 원 상태를 잘 기억했다가 복구해주는 기능 필요 -> 등등 여러가지 문제를 잘 관리해주는 소프트웨어를 수행해..
-
[React] Section 22Frontend/React 2024. 1. 8. 09:47
인증 토큰의 원리 사용자가 유효한 자격 증명을 전송한 뒤 허가 토큰을 생성하지, 저장하지는 않는다. 토큰은 기본적으로 몇 가지 정보를 포함한다. 백엔드에서 이 토큰을 생성하고 그것을 다시 클라이언트에게 전송한다. 이 토큰의 특별한 점은 토큰을 생성한 백엔드만이 해당 토큰의 유효성을 확인하고 검증할 수 있다는 것이다. 백엔드만이 알 수 있는 개인키를 사용해 토큰을 생성했기 때문! -> 백엔드에서 토큰을 생성하고 유효성 검증을 하며 프론트에서는 토큰을 저장하고 이후에 보낼 요청에 첨부하여 해당 토큰을 사용자의 로그인 여부를 판단하는 인디케이터로 사용해야 한다. 백엔드에서 받는 응답으로부터 토큰을 추출해서 저장해야 함 가장 간단한 방법은 local storage! localStorage.setItem('tok..
-
[Project] REST API경남_ABC_FE/Section_4 2023. 12. 19. 11:36
REST API 디자인 REST는 "Representational State Transfer"의 약자 REST API는 웹에서 사용되는 데이터나 자원을 HTTP URI로 표현하고, HTTP 프로토콜을 통해 요청과 응답을 정의하는 방식을 말한다. REST 성숙도 모델 - 0단계 0단계에서는 단순히 HTTP 프로토콜을 사용하기만 해도 된다. 물론 이 경우, 해당 API를 REST API라고 할 수는 없다. REST 성숙도 모델 - 1단계 모든 자원은 개별 리소스에 맞는 엔드포인트를 사용해야 하며 요청하고 받는 자원에 대한 정보를 응답으로 전달해야 한다는 것이 1단계의 핵심이다. 엔드포인트 작성 시에는 동사, HTTP 메서드, 혹은 어떤 행위에 대한 단어 사용은 지양하고, 리소스에 집중해 명사 형태의 단어로 ..
-
[React] Section 20Frontend/React 2023. 12. 17. 15:29
리듀서 함수는 반드시 순수 함수여야 하며 부수효과가 없고 동기식이어야 한다. 어디에 side effect와 비동기 작업이 실행되어야 하는가? -> useEffect를 사용하여 컴포넌트 안에 넣는다. -> action creator 안에 넣는다. 우리의 logic 코드를 어디에 두어야 하는가? 동기적이고, side effect가 없는 코드 (ex 데이터 변환) : reducer 사용, action creators나 컴포넌트를 피할 것 비동기적이거나 side effect가 있는 코드 : action creators나 컴포넌트를 사용하고 reducer는 절대 사용하지 말 것 리덕스와 함께 useEffect 사용하기 useSelector가 리덕스에 대한 구독을 설정한다. 리덕스 스토어가 변경될 때 마다 컴포넌트..
-
Github와 Git Flow경남_ABC_FE/Section_3 2023. 12. 15. 18:52
새로운 branch로 Git이 바라보는 곳, HEAD를 변경하는 작업을 switch라고 부른다. 브랜치를 생성할 때는 생성(create)의 의미로 -c 옵션을 붙여줘야 하고, 기존에 있는 브랜치로 옮길 때는 붙이지 않아도 된다. git switch -c feature git checkout -b feature 기존에 있던 main 브랜치로 HEAD를 변경하려면, -c 옵션을 붙이지 않는다. git switch main git checkout main git merge 기능 개발을 진행 git commit -m "기능1의 세부 기능1" git commit -m "기능1의 세부 기능2" git commit -m "기능1 개발 완료" merge를 위해 main 브랜치로 전환한다. main 브랜치로 feat/t..