Languages/SQL

Languages/SQL

[Testing] MySQL vs SQLite

평소 테스트코드 활용 시 속도를 위해 SQLite를 주로 이용하는 편인데, 아무래도 실제 주로 사용하는 MySQL과 일부 다른 부분이 있다보니 유의해서 사용해야 할 필요가 있어 적어봅니다. 사실상 아래 요소 중 제일 유의해야 할 부분은 데이터유형 문제일 것 같고, 그중에서도 날짜 형식에 신경을 잘 써줘야겠습니다. SQLite vs MySQL SQL 문법: SQLite는 LIMIT 절을 사용하여 쿼리에서 반환되는 행 수를 제한합니다. MySQL도 **LIMIT 절을 사용하지만 결과 집합의 시작 부분부터 오프셋을 지정하는 LIMIT ... OFFSET 구문도 지원합니다. SQLite는 와일드카드 문자 %와 함께 LIKE 연산자를 지원하지만, MySQL은 %와 _를 와일드카드 문자로 모두 지원합니다. SQLi..

Languages/SQL

default vs not null

default: 사용자가 값을 명확하게 주지 않으면, 지정된 default 값으로 입력 -> null을 밀어넣으면 들어간다. not null: 사용자가 뭐라 하건, null은 무조건 입력 불가능 -> null을 밀어넣으면 에러 발생 INSERT INTO table_name (columns) VALUES (values); 처음에는 위와 같이 입력하는 SQL에서 자동으로 default 값이 채워지는 것을 보고 막연하게 '아, null은 default로 채워지는구나' 라고 생각했습니다. 그런데, 이번에 크롤러와 관련된 조금 규모가 큰 프로젝트를 진행하면서 수많은 null을 처리하면서 위 두 가지 개념이 비슷해보이지만 다른 개념이라는 것을 배웠습니다. 프로젝트중에 null을 처리하긴 해야겠지만, 크롤러를 쓰다보..

HC-Kang
'Languages/SQL' 카테고리의 글 목록