분류 전체보기

개발/DB

[MariaDB] 제약조건 확인

모든 테이블의 제약조건 확인 select * from information_schema.table_constraints; 특정 테이블의 제약조건 확인 select * from information_schema.table_constraints where table_name = '테이블명'; 참고 Information Schema CHECK_CONSTRAINTS Table Supported check constraints. mariadb.com

개발/DB

[MariaDB] auto_increment 값 초기화

alter table tableName auto_increment=1; 만약 auto_increment가 설정된 컬럼에 설정 값보다 이미 높은 값이 있다면 auto_increment를 원하는 값으로 설정하더라도 이미 있는 최댓값의 다음값으로 설정된다. 예시 id number 4 0 5 0 6 0 위와 같은 테이블이 있을 때 auto_increment를 1로 설정하고 행을 추가해도 auto_increment값은 최댓값인 6의 다음인 7로 설정된다. insert를 하나 더 하면 아래와 같이 7이 추가된다. id number 4 0 5 0 6 0 7 0 참고 How to set initial value and auto increment in MySQL? How do I set the initial value ..

개발/DB

[MariaDB] safe update mode 해제

set sql_safe_updates=0; # safe update mode 해제 ​ # update 또는 delete문 실행 ​ set sql_safe_updates=1; # safe update mode 설정

개발/Server

[HTTP] Content-Type

HTTP 헤더에 들어가는 정보 중 하나로 데이터(자원)의 타입을 명시하는 헤더이다. content-type은 MIME표준에 정의되어 있다. MIME(Multipurpose Internet Mail Extension)은 전자우편을 위한 인터넷 표준 포맷이다. 전자우편은 기본적으로 7비트의 ASCII문자로 전송되는데 8비트 이상의 코드를 사용하는 문자나 이진파일은 MIME 포맷으로 변환되어 전송되게 된다. 이 때 어떤 데이터인지 MIME type이 정해져야 한다. HTTP에서의 Content-Type에 들어가는 것이 MIME type이다. MIME표준에 정의된 것을 사용한다는 것이 이것을 말하는 것이다. GET방식은 대부분 key=value 형식으로 url에 파라미터를 담아 보내므로 content-type ..

개발/Node.js

[Express] req.body undefined

문제점 body를 사용할 수 있도록하는 body-parser 미들웨어를 사용하지 않아 발생 (express버전이 4.16이상이라면 express에 내장되어 있음) 해결방법 express 4.16이상 const express = require('express'); const app = express(); ​ // parse application/x-www-form-urlencoded app.use(express.urlencoded({extended: true})); ​ // parse application/json app.use(express.json()); express 4.15이하 1. body-parser 미들웨어 설치 npm i body-parser 2. 적용 const express = requi..

개발/Dart

factory 키워드 (싱글턴 패턴)

class의 인스턴스를 새로 만들지 않도록 도와주는 키워드이다.(보통 싱글턴을 구현할 때 사용한다.) 싱글턴 패턴이란 class의 인스턴스를 하나만 생성하고 이를 재사용하도록 하는 디자인 패턴이다. factory 키워드가 쓰인 생성자는 무조건 자기 자신 타입의 인스턴스를 반환해야 한다. 예시 class TestFactory { static final TestFactory _factoryInstance = TestFactory._internal(); ​ factory TestFactory() { return _factoryInstance; } ​ TestFactory._internal() { print('call'); } } ​ main() { var testFactory1 = TestFactory(); ..

개발/Server

[Error][docker-compose] yaml: found character that cannot start any token

문제점 yaml파일은 tab을 허용하지 않는데 tab을 사용해서 발생 해결방법 tab을 모두 space(space바 띄어쓰기)로 변경 참고 YAML error: found character that cannot start any token · Issue #1 · moraes/config Maybe I'm doing something wrong, but when I parse this file: smtp: port: 25 host: smtp.mail.com username: johndoe password: secretpassword with config.ParseYaml(configData) I get YAML error: li... github.com

개발/Server

docker compose 작성 방법 및 명령어 모음

docker-compose 파일 작성 문법 비슷하거나 같은 의미인 것은 주석이 한번만 달려있음 # docker-compose 버전 명시 version: "3.9" ​ # 생성할 서비스(컨테이너) 지정 services: # nginx란 이름의 서비스 생성 nginx: # nginx:latest 이미지로 서비스 생성 # DockerFile기반이 아니라면 아래 image의 주석을 해제하고 build와 그 하위의 context와 dockerfuile을 주석처리해야함 #image: nginx:latest # nginx란 서비스를 실행하는 컨테이너의 이름 지정 container_name: nginx # DockerFile기반으로 서비스를 생성하기 위한 build명령 build: # DockerFile이 있는 경로 ..

개발/DB

[MariaDB][Node.js-express][dotenv] retrieve connection from pool timeout after 10004ms

문제점 pool에서 connection을 가져오지 못해 발생한 에러 내 경우엔 DB 연결이 제대로 되지 않아 발생 실제 db연결 시간의 문제가 아닌 dotenv의 설정 파일인 .env파일의 경로 지정이 잘못되어 db에 연결하지 못한 문제(dotenv를 제대로 알아보지 않고 사용한 문제) 이 문제가 발생했다면 DB 서버와 잘 연결되고 있는지(제대로 된 DB정보를 입력해서 연결하고 있는지) 먼저 확인 필요 해결방법 이 해결방법은 dotenv를 제대로 쓰지 못해 발생한 문제를 해결하는 방법을 얘기하므로 다른 경우라면 도움이 되지 않는다. 두 방법 중 하나로 해결 가능하다. 1. 서버를 종료하고 다시 실행할 때 .env파일 위치에서 실행 2. 아래와 같이 dotenv를 불러오는 부분을 수정 require('d..

개발/Node.js

Mac Node.js 업데이트 (n 모듈)

n이라는 node.js 버전 관리 모듈을 이용해서 쉽게 업데이트 가능하다. 실제론 업데이트라기보단 해당 버전을 다운로드하는 것이다. npm에서 n 모듈 설치 sudo npm install -g n 업데이트(다운로드) 아래의 예시와 같이 필요한 버전을 설치 가능하다. sudo n lts sudo n latest sudo n 버전 버전 변경 버전 관리 모듈이여서 여러 버전을 다운 받고 변경도 가능하다 아래 명령어를 입력하면 다운받은 버전들 목록이 보이고 화살표 위/아래 키로 바꿀 버전으로 커서를 옮기고 엔터 클릭하면 버전이 변경된다. sudo n 참고 Upgrade Node.js to the latest version on Mac OS Currently I am using Node.js v0.6.16 on ..

leebera_
'분류 전체보기' 카테고리의 글 목록 (5 Page)