ํ ์ด๋ธ์ ์์ฑํ๊ฑฐ๋ ๋ฐ์ดํฐ๋ฅผ ๋ฃ์ ๋์ ์ฝ๋ฉํธ(์ฃผ์)์ด๋ ๋ฐ์ดํฐ ์์ "&"๊ฐ ๋ฌธ์์ด๋ก ๋ค์ด๊ฐ์๋ ๊ฒฝ์ฐ ์ฌ๋ฌ DBMS ํด์์๋ ํด๋น ๋ฌธ์์ด์ ๋์ฒด๋ณ์๋ก ์ธ์ํ๊ณ ๋ ํฉ๋๋ค. ์ด๊ฒ ์๊ฐ๋ณด๋ค ๋ง์ด ๊ท์ฐฎ์๋ฐ,, ๋์ฒด๋ณ์๋ก ์ธ์ํ์ง ์๋๋ก ํ๋ ๋ฐฉ๋ฒ์๋ ๊ตฌ๊ธ๋ง์ ํ๋ฉด ์ฌ๋ฌ๊ฐ์ง ์ฐพ์ ์ ์์ต๋๋ค. ๊ทธ๊ฒ ๋ง๋ ๋ฐฉ๋ฒ์ธ์ง๋ ๋ชจ๋ฅด๊ฒ ์ง๋ง ์ค์ ๋ก ๋ง์ด๋ค ๊ทธ๋ ๊ฒ ์ฐ๋ ๊ฒ ๊ฐ์ต๋๋ค. ํ์ง๋ง ์ ๋ ๋ ์ฝ๊ณ ๊ฐ๋จํ ๋ฐฉ๋ฒ์ ์ฐพ์์ ์ ๋ฆฌํด๋ณด๋ ค๊ณ ํฉ๋๋ค. (์ด๊ฑฐ๋ ์ง์ง ์ด๋ ๊ฒํ๋๊ฒ ๋ง๋๊ฑด์ง๋ ๋ชจ๋ฅด๊ฒ ์.. ์ฝ๊ฐ ๊ผผ์๊ฐ์ ๋๋)
๋ฐ์ดํฐ๋ฅผ ๋ฃ๋๋ค๊ณ ๊ฐ์ ํ๋ฉด INSERT๋ฌธ์ ์ ๋ ฅํ๊ฒ ์ง์?
insert into table(a, b, c) values ('testA', 'testB', 'testC&D');
์ ๋ sqlGate ํด์ ์ด์ฉํด์ ์ฟผ๋ฆฌ๋ฅผ ์ํํด๋ณด์์ต๋๋ค. ๊ทธ๋ฌ๋ฉด ์๋์๊ฐ์ด ๋์ฒด๋ณ์ ๊ฐ์ ์ ๋ ฅํ๋ผ๊ณ ํ์ ์ด ๋จ๊ฒ ๋ฉ๋๋ค.
๊ทธ๋ฆฌ๊ณ ๋ ์ค์ ๋ก ๋ฐ์ดํฐ๊ฐ ๋ค์ด๊ฐ์ง ์์ฃ .. ๋ฐ๋ผ์ ์ ๋ ์๋์๊ฐ์ด ์ฟผ๋ฆฌ๋ฅผ ์์ ํ์์ต๋๋ค.
insert into table(a, b, c) values ('testA', 'testB', 'testC&\D');
์ด๋ ๊ฒํ๋ฉด "&"์์ฝ์ด ๋ค์ ๋ฐ๋ก ๋์ฒด๋ณ์๋ช ์ด ์ค์ง์๊ธฐ ๋๋ฌธ์ ํด๋น ๋ฌธ์์ด์ ๋์ฒด๋ณ์๋ก ์ธ์ํ์ง ์์ต๋๋ค.
์ฐธ๊ณ ๋ก ์ญ์ฌ๋์("\") ๋ ๊ธฐ๋ณธ์ผ๋ก ์ค์ ๋์ด์๋ ESCAPE ๋ฌธ์์ ๋๋ค. ๋ง์ฝ์ ESCAPE๋ฌธ์๋ฅผ ๋ค๋ฅธ ๋ฌธ์๋ก ๋ณ๊ฒฝํ์๊ฑฐ๋ ๊ธฐ๋ณธ ESCAPE ๋ฌธ์๊ฐ ๋ค๋ฅธ ๊ฒฝ์ฐ์๋ ํด๋น ESCAPE ๋ฌธ์๋ก ๋์ฒดํด์ฃผ์ ์ผ ์ฟผ๋ฆฌ๊ฐ ์ํ๋ ๊ฒ์ ๋๋ค.