분류 전체보기 216

SQL - INSERT, UPDATE, DELETE

● INSERT INTO 구문 INSERT INTO table_name (column1, column2, column3, ...) VALUES (value1, value2, value3, ...); INSERT INTO table_name VALUES (value1, value2, value3, ...); > 모든 열에 값을 추가하는 경우, 속성 추가 x 지정된 열에만 데이터 삽입 INSERT INTO Customers (CustomerName, City, Country) VALUES ('Cardinal', 'Stavanger', 'Norway'); ★ NULL : NULL 값이 있는 필드는 값이 없는 필드 IS NULL 구문 SELECT column_names FROM table_name WHERE c..

SQL - SELECT

SELECT DISTINCT 구문 SELECT DISTINCT column1, column2, ... FROM table_name; > 중복값 제거 SELECT COUNT(DISTINCT Column1) FROM Table_name; > 서로 다른(구별된) 속성의 개수 다음은 MS Access에 대한 해결 방법입니다. SELECT Count(*) AS DistinctColumns FROM (SELECT DISTINCT Column FROM Table_name); WHERE 구문 SELECT column1, column2, ... FROM table_name WHERE condition; > SQL은 텍스트 값을 작은따옴표로 묶어야 합니다(대부분의 데이터베이스 시스템에서는 큰따옴표도 허용함). 그러나 숫자..

데이터베이스 기초

메모리에 임시 저장(In-Memory) > 데이터를 다룰 때에는 프로그램이 실행될 때에만 존재하는 데이터 > 예를 들어 변수를 만들어 값을 저장한 경우, 해당 값은 메모리 상에 일시적으로 저장되지만, 프로그램이 종료될 때 해당 프로그램이 사용하던 데이터도 사라짐 파일 입/출력(I/O) > 파일을 읽는 방식으로 작동하는 형태를 말함 > 엑셀 시트나 CSV 같은 파일의 형태 > but 데이터가 필요할 때마다 전체 파일을 매번 읽어야 함, 복잡하고 데이터량이 많아질수록 데이터를 불러들이는 작업이 점점 힘들어 짐 but 관계형 데이터베이스에서는 하나의 CSV 파일이나 엑셀 시트를 한 개의 테이블로 저장할 수 있음 > 한번에 여러 개의 테이블을 가질 수 있기 때문에 SQL 을 활용해 데이터를 불러오기 수월 ★ R..

WAS 개발

const express = require('express') const app = express() const port = 3000 > require : HTTP 서버를 생성하기 위해 express 패키지 모듈을 불러옴 > express 함수를 호출하여 app 변수에 할당 > port 번호에 3000 지정 > HTTP 요청 중, 메소드가 get, 엔드포인트(Endpoint)가 /인 요청을 또 다른 함수로 처리하는 비지니스 로직 > req : 요청, res : 답변 객체 > res.send() : 데이터를 클라이언트에 보낼 수 있음 > app.listen(port, callback) 와 같음. listen 메소드는 특정 호스트와 port에서 연결을 수신한다라는 것을 표현하기 위해서 사용 ★ 클라이언트 요..

HTTPS

HTTPS : Hyper Text Transfer Protocol Secure Socket layer 의 약자 > HTTP over SSL(TLS), HTTP over Secure라고도 부르기도 함 > HTTPS : HTTP 요청을 SSL 혹은 TLS라는 알고리즘을 이용해, HTTP 통신을 하는 과정에서 내용을 암호화하여 데이터를 전송하는 방법 ★ SSL (Secure Sockets Layer)과 TLS (Transport Layer Security)는 모두 인터넷에서 안전한 통신을 할 수 있도록 하는 프로토콜, 암호화 기술을 제공 ※ SSL : Secure Sockets Layer의 약자, 초기에 넷스케이프(Netscape)에서 개발되었으며, 현재는 TLS로 대체 ※ TLS : Transport Lay..

nginx Web Server, 호스팅

★ nginx.conf 파일 구조 > 환경 설정 파일은 관리자가 편집하거나 프로그램을 분석할 수 있는 텍스트 파일 > nginx도 nginx.conf라는 텍스트 파일에 여러 가지 값을 지정해 프로그램의 작동 방법을 결정 > 환경 설정은 nginx.conf 파일에 값을 지정하여 설정 >. nginx.conf 파일은 논리적으로 작성되어 있는 지시어(Directives) 목록 > 애플리케이션 전체가 지시어에 부여하는 값에 의해서 작동 > NGINX는 특정 지시어의 묶음 형태로 모듈을 만들어 이를 통해 작동 > 가장 기본적인 지시어들은 NGINX의 코어 모듈에 포함되어 있으며, 필요한 모듈을 만들어 사용 sudo find / -name nginx.conf > 해당 디렉터리로 이동하여 디렉터리 구조를 살펴보니 n..

빌드와 언어별 빌드 도구

빌드 : 프로그램의 소스 코드를 독립적인 아티팩트(artifact)로 변환하는 과정 : 아티팩트 그 자체로도 실행이 가능하며, 대체로 런타임(소프트웨어 실행 환경)이 필요한 경우가 많음 프레임워크 : 소프트웨어 개발을 쉽게 만들어주기 위해 필요한 도구, 규약의 집합체 백엔드 웹 애플리케이션 개발용 프레임워크 Spring (Java, Kotlin) Django (Python) Express (JavaScript) 프론트엔드 웹 애플리케이션 개발용 프레임워크 React 및 관련 라이브러리 (JavaScript) Vue.js, Svelte (JavaScript) 모바일 및 데스크탑 애플리케이션 개발용 프레임워크 Flutter (Android, iOS 등) .NET Framework (Windows) Apple..

정적 웹사이트 vs 동적 웹사이트

정적 웹사이트: HTML 파일(코드) 자체로 배포되는 사이트 (CSR, Client Side Rendering) 동적 웹사이트: 서버에 의해 HTML 파일이 동적으로 생성되는 사이트 (SSR, Server Side Rendering) AJAX 이전 > 서버에서 웹페이지를 만드는 기술이 보편화되었고, 이러한 동적 웹사이트를 만드는 기술로는 PHP, JSP, ASP 등이 널리 사용 // 동적 웹페이지 예제 (node.js) const http = require('http'); const server = http.createServer((req, res) => { res.setHeader('Content-Type', 'text/html'); // HTML 문서의 형태로 전달됨 res.end('동적 웹페이지wi..