본문 바로가기

개발47

[SQL] BCNF 데이터베이스 정규화 선 요약요약:1NF: 다중 값을 원자값으로 분리.2NF: 부분적 함수 종속성 제거.3NF: 이행적 종속성 제거.BCNF: 모든 결정자가 후보 키가 되는 테이블로 정규화.이 과정을 통해 데이터 중복을 줄이고 데이터베이스의 무결성을 유지할 수 있습니다. 들어가기에 앞서 용어정리 먼저 하겠다.**기본키(Primary Key)**는 테이블 내에서 각 행을 고유하게 식별할 수 있는 속성(열)입니다. 기본키는 중복이 없으며, NULL 값을 가질 수 없습니다.**후보키(Candidate Key)**는 기본키로 사용할 수 있는 모든 속성의 집합입니다. 즉, 테이블 내에서 각 행을 고유하게 식별할 수 있는 속성들 중에서, 하나를 선택하여 기본키로 사용합니다. 후보키 중 하나만 기본키로 선택됩니다.**복합키(Composi.. 2024. 10. 7.
[Node.js] 웹소켓 io.on 과 socket.on 차이 io.on과 socket.on은 각각 Socket.IO 서버의 이벤트 처리 방식에서 사용되며, 그 역할과 의미가 다릅니다.1. io.onio.on은 서버 차원의 이벤트 리스너입니다. io는 Socket.IO 서버 객체이므로, 이 객체를 통해 클라이언트의 연결(또는 기타 서버 전역 이벤트)을 처리할 수 있습니다.주로 connection 이벤트를 감지하여 새로운 클라이언트가 서버에 연결되었을 때 실행할 코드를 정의합니다.즉, 새로운 소켓 연결이 발생할 때마다 그 소켓에 대한 이벤트를 처리할 수 있도록 준비합니다.예시: io.on("connection", (socket) => { // 클라이언트가 연결될 때마다 실행되는 코드});2. socket.onsocket.on은 각각의 연결된 클라이언트 소켓에서 발생.. 2024. 10. 1.
[JS] stack JavaScript에서 스택은 배열(Array)을 사용하여 구현할 수 있습니다. 배열은 스택의 기본 연산인 push와 pop을 제공하기 때문에, 별도로 스택 자료구조를 정의하지 않고 배열을 이용해 쉽게 스택처럼 사용할 수 있습니다.스택의 주요 연산push(item): 스택의 맨 위에 새로운 아이템을 추가합니다.pop(): 스택의 맨 위에 있는 아이템을 제거하고 그 아이템을 반환합니다.peek() (배열에서는 지원하지 않지만, 구현 가능): 스택의 맨 위에 있는 아이템을 제거하지 않고 그 아이템을 반환합니다.length (스택의 크기): 배열의 length 속성을 사용하여 스택의 크기를 확인할 수 있습니다.empty check: 배열의 길이가 0인지 확인하여 스택이 비어있는지 확인할 수 있습니다. JS에서.. 2024. 9. 27.
[Node.js] 파라미터 URI의 :characterName 부분이 const { characterName } = req.params; 로  localhost:3017/api/character/delete/Chovi 로 요청한다면 Chovi가 들어오게 된다. 하지만 const { characterName } = req.params; 여기 중괄호의 이름을 다르게 지정한다면 오류가 발생하기에 주의가 필요하다. 2024. 9. 12.