SQL 문자열 이스케이프

선택한 SQL 방언에 맞게 문자열을 이스케이프합니다. MySQL은 백슬래시와 따옴표를, PostgreSQL/SQLite/MSSQL은 홑따옴표를 두 번 써서 처리합니다.

브라우저 로컬 가입 불필요 개발자

MySQL/MariaDB, PostgreSQL, SQLite, MSSQL용 SQL 문자열 리터럴의 escape 결과와 따옴표로 감싼 형태를 만들어보는 보조 도구입니다. 파라미터 바인딩을 대신하는 보안 기능은 아닙니다.

SQL 문자열 이스케이프 방법

  1. SQL 방언을 선택합니다.
  2. 문자열 리터럴로 표현할 텍스트를 입력합니다.
  3. 이스케이프된 값과 인용된 문자열 결과를 확인합니다.
  4. 테스트나 확인에 필요한 결과를 복사합니다.

방언별 처리

MySQL/MariaDB는 역슬래시, 따옴표, 줄바꿈, CR, NUL, Ctrl-Z 등을 역슬래시 이스케이프합니다. PostgreSQL, SQLite, MSSQL은 작은따옴표를 두 개로 만듭니다.

인용 결과는 MySQL·PostgreSQL·SQLite에서 일반 작은따옴표를 쓰고 MSSQL에서는 N'text' 형태를 만듭니다.

개인정보 및 보안 제한

변환은 브라우저에서 수행되며 이 애플리케이션이 입력 텍스트를 외부 서버로 보내지 않습니다. 이 도구를 SQL 인젝션 방어 수단으로 사용하지 마세요. 실제 서비스에서는 DB 드라이버의 prepared statement 또는 parameter binding을 사용해야 합니다.

SQL Escape Helper FAQ

Prepared Statement 대신 써도 되나요?

아닙니다. 신뢰할 수 없는 값은 반드시 DB 드라이버의 파라미터 또는 prepared statement로 전달하세요.

어떤 SQL 방언을 지원하나요?

MySQL/MariaDB, PostgreSQL, SQLite, MSSQL T-SQL을 지원합니다.

MSSQL 결과 앞에 N이 붙는 이유는 무엇인가요?

이 구현은 MSSQL 모드에서 N 접두사가 붙은 문자열 리터럴을 출력합니다.

PostgreSQL에서 E 문자열도 만들어주나요?

아닙니다. 이 구현은 작은따옴표를 두 개로 바꾸고 일반 작은따옴표로 감쌉니다.

SQL을 실제로 실행하나요?

아닙니다. 텍스트만 로컬에서 변환하며 데이터베이스에 연결하지 않습니다.