본문 바로가기

mysql5

[MySQL] 특정 쿼리 결과 세로 출력 조회 쿼리를 실행 할 때 컬럼 개수가 많으면 다음줄로 침범해서 굉장히 보기 힘듭니다. 그래서 결과 row들을 컬럼 별로 조회할 수 있는 방법을 찾아봤습니다. MySQL은 쿼리 뒤에 \G를 붙여서 실행하면 됩니다. 참고로 PostgreSQL에서는 쿼리 실행전 \x 명령어를 실행하면 됩니다. 기존 쿼리 select * from job_posting where company_name = "두핸즈"; 세로 출력 명령어 적용 쿼리 select * from job_posting where company_name = "두핸즈" \G; 2024. 3. 23.
[MySQL] 외래키로 설정되어 있는 키 속성 변경하기 FORUM 테이블과 COMMENT테이블에 외래키로 설정되어 있는 ucode를 AUTO_INCREMENT로 변경하려고 하는데 외래키로 설정되어 있어서 외래키 해제 후 변경한 다음에 다시 외래키 설정을 해줘야한다. 1. 해당 테이블들 LOCK 걸어주기 LOCK TABLES USER WRITE, FORUM WRITE, COMMENT WRITE; 일단 테이블을 잠궈준다. 2. 외래키 해제 ALTER TABLE FORUM DROP FOREIGN KEY USER, MODIFY ucode INT; FOREIGN KEY 옆에 USER는 외래키 설정할 때 주석같은 건데 잘못 입력했다. ALTER TABLE COMMENT DROP FOREIGN KEY COMMENT, MODIFY ucode INT; FORUM 테이블과 마.. 2020. 10. 18.
[MySQL] 컬럼 값 더하기 express로 게시판 구현 중인데 조회수 추가하기 위해서 사용했다. 1을 더한다고 했을 때 UPDATE 테이블 SET 컬럼명 = 컬럼명+1 WHERE 조건문 UPDATE FORUM SET views = views+1 WHERE post_code = 2; FORUM 테이블에서 post_code가 2인 views컬럼값 1 더하기 nodejs 에서 적용했을 때 db.query( `UPDATE FORUM SET views = views+1 WHERE post_code=${number};`, (err) => { if (err) throw err; } ); 2020. 10. 11.
[Node.js] mysql 연동하기 (+ mysql2, pool 사용 이유) 이 글을 처음 올렸을 땐 mysql 패키지를 사용한 코드를 올렸었습니다. mysql2 패키지는 기존보다 성능 향상이 되었으며, promise wrapper 제공, Prepared Statement 지원(쿼리 재사용성 향상, 인젝션 방어), 압축과 보안 기능 지원, 사용자 정의 스트림 및 폴링 지원 및 추가된 기능들이 mysql 패키지 보다 좋기 때문에 사용하지 않을 이유가 없습니다. 그래서 mysql2 패키지 사용 예시 코드로 변경하게 되었습니다. Node.js에서 사용하기 위한 mysql2 패키지 설치를 먼저 해줍니다. npm i --save mysql2 import mysql from 'mysql2/promise'; // Promise API 사용하기 위해서 /promise 불러오기 const poo.. 2020. 8. 3.