생활코딩WEB
-
[Node.js & MySQL] 코드 리팩토링, 이슈 정리생활코딩/WEBn 2021. 1. 24. 11:47
다음 단계인 Express로 가기전에 나름대로 코드를 정리하는 시간을 가졌다. 생활코딩에서는 다음 단계로 넘어갈 때 원초적인 골격 코드를 가지고 해당 주제에만 초점을 맞추는데 아까워서 전 단계에서 실습했던 코드를 그대로 가지고 추가추가 하는 과정을 거쳤더니 WEB3까지 마친 지금은 코드가 조각조각 이어붙인 넝마주이가 되고 말았다. 현재 이정표는 아래와 같다. WEB1 HTML&Internet -> WEB2 CSS -> WEB2 JavaScript -> WEB2 Node.js -> WEB3 Node.js & MySQL WEB1 HTML&Internet: 기본적인 HTML 페이지 골격 작성 WEB2 CSS: 디자인 부분을 스타일시트로 이동 & 로 연결 WEB2 JavaScript: Night Day 버튼으로..
-
[Node.js & MySQL] 도전과제: 검색/페이징/정렬생활코딩/WEBn 2021. 1. 24. 11:33
생활코딩 Node.js - MySQL 마무리에서 제시된 도전과제를 구현하였다. 1. 검색: form get 방식으로 요청을 받고, db단에서 SQL구문 SELECT * FROM 테이블 WHERE 컬럼 LIKE "%키워드%"로 데이터를 찾는다. 찾은 데이터를 html 데이터로 구성해서 웹페이지로 띄운다. 2. 페이징: 한번에 보여줄 페이지를 설정하고, 페이지목록을 만들어서 넘길 수 있도록 한다. 각 페이지는 SELECT * FROM topic LIMIT 0 OFFSET 20; 구문을 응용해서 구성하고, 페이지 목록은 SELECT COUNT(*) FROM topic; 구문으로 전체 글 개수를 확인한 다음 나눠서 구한다. 3. 정렬: 타이틀-오름차순/타이틀-내림차순/작성일순/작성일역순 4가지 옵션으로 검색이 ..
-
[Node.js & MySQL] 도전과제: 검색 - 색인기능 살펴보기생활코딩/WEBn 2021. 1. 20. 23:11
자주 검색하는 컬럼이라면 색인을 넣어주자. 검색 속도가 빨라진다. 아래처럼 인덱스를 만들어주고, 기존대로 WHERE 컬럼명 = ?으로 검색하면 된다. 다만 데이터가 꽤 많아야(테스트했을 때는 몇십만건 정도) 유의미한 차이를 느낄 수 있다. CREATE INDEX index_category ON 테이블명(컬럼명) 생활코딩 Node.js - MySQL 수업은 이고잉님이 추가 도전과제를 던져주는 것으로 끝난다. 검색, 정렬(저자 이름 순, 시간 순), 페이지 기능을 구현해보면 좋겠다. 그리고 팁을 몇 가지 준다. 1. 검색 의 get 방식을 이용해서 검색 요청을 처리하고, db단에서 SQL구문 SELECT * FROM topic WHERE title = "keyword"로 데이터를 찾는다. 이때 데이터가 많으..