일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- 프로그래머스 데브코스 프론트엔드
- nextjs사용법
- KDT 프로그래머스 데브코스 프론트엔드
- 이벤트 수식어
- 프로그래머스 프론트엔드 데브코스
- 프로그래머스 데브코스
- Vue
- 리스트 렌더링
- Spacer
- vue 지역 컴포넌트
- vue 이벤트 수신
- 쌓임맥락
- git 같은계정 다른 컴퓨터
- 다른컴퓨터에서 git사용
- vuex map
- 프로그래머스 K_Digital Training
- intersection opserver
- SCSS use
- SCSS extend
- react next
- netlify redirect
- vue mixin
- SCSS forward
- SCSS import
- flex
- 리액트
- 폼 입력 바인딩
- postcss
- KDT 프로그래머스
- 고양이 사진 검색기
- Today
- Total
혼자 적어보는 노트
[MySQL] sequelize mysql column 이름, 속성 변경 및 생성 본문
회원가입 구현을 하는 도중에 데이터를 서버로 넘기는데
자꾸 아래와 같은 에러가 발생했다.
parent: Error: Data too long for column 'password' at row 1
처음에 password column의 속성으로 DataTypes.STRING(30) 로 설정해서
문자열 길이가 30으로 설정이 되어있었다.
그래서 단순하게 100으로 변경을 하고 저장을 했는데 자꾸 저 에러가 떴다.
200으로 변경을 해보고 암호화된 password를 콘솔로 찍어봤는데 길이가 100이 넘지 않았다.
연동이 안되는 것 같아서 mysql 워크벤치로 확인을해보니 역시나 이전 설정 그대로인것!
변경하는 것을 알아보니 sequelize의 Table 속성은 변경할 수 없고 삭제하고 다시 생성을 해야 한다고 한다.
column 삭제 후 생성 하는 방법
1. 마이그레이션 파일 추가
npx sequelize migration:create --name "마이그레이션 파일명"
파일 명은 마음대로 지정을 하면 되고 위의 명령어를 마치면
migrations폴더 안에 파일이 생성된다
2. 마이그레이션 파일에 수정하려는 column의 내용 입력
일단 기본값으로 세팅이 되어있는데 up 안에 변경하려는 내용을 입력해주면된다.
removeColumn으로 지우고
addColumn으로 다시 생성을 해주었다.
❗❗ 조심해야할 점!
* 인자가 Sequelize로 되어있기 때문에 type: DataType이 아니라 type : Sequelize이다.
* models에서의 이름 말고 MySQL안의 table의 이름을 적어주어야 한다.
(따로 테이블 이름 설정을 하지 않을 경우 복수형으로 저장되기 때문)
3. 저장 후 아래의 코드를 실행한다.
npx sequelize-cli db:migrate
삭제/생성 완료!
* 워크벤치를 켜고 있다면 탭을 닫고 다시 실행해야 변경된 것이 적용된다.
+)
만약 또 변경사항이 생긴다면 같은 migration 파일에서 수정하고
npx sequelize-cli db:migrate를 하면 적용이 될까?
안된다. 🤣
migration 되돌리기
npx sequelize-cli db:migrate:undo:all
참고:
'기타' 카테고리의 다른 글
private repository clone 안될 때 / remote: Repository not found. (0) | 2022.03.26 |
---|---|
회원가입 구현하기 /NextJS, Express, MySQL (0) | 2022.03.18 |
[Redux] Redux-saga 사용 해보기 (0) | 2022.03.08 |
[VSCode] prettier 설정 변경 / 줄바꿈 / 따옴표 변경 (0) | 2022.03.06 |
target="_blank"의 문제점 / noopener noreferrer 사용 (0) | 2022.03.01 |