متن خود را بچسبانید و آن را برای SQL escapeشده دریافت کنید، آماده چسباندن در کد یا داده.
در حال بارگذاری ابزار...
نحوه استفاده از SQL Escape
متنی را که میخواهید escape کنید بچسبانید یا تایپ کنید.
در صورت نیاز گزینهها را تنظیم کنید.
نتیجه escapeشده را کپی کنید.
درباره SQL Escape
آپاستروف کاراکتر کوتیشن رشتههای SQL است، بنابراین نامی مانند O'Brien رشته را زودتر تمام میکند و دستور را خراب میکند. در SQL استاندارد راهحل دو برابر کردن آن است: 'O''Brien'. MySQL بکاسلش را هم میپذیرد.
یک هشدار از همان ابتدا. escape دستی برای یک اسکریپت یکبارمصرف یا یک migration مناسب است، اما برای کد برنامه از کوئریهای پارامتری استفاده کنید. آنها تنها محافظت قابلاعتماد در برابر SQL injection هستند.
چه چیزی escape میشود
SQL استاندارد: یک کوتیشن تکی به دو کوتیشن تکی تبدیل میشود. سبک MySQL: بکاسلش، کوتیشنهای تکی و دوتایی، NUL، شکست خطها و Ctrl+Z یک بکاسلش میگیرند.
پرسشهای متداول
آیا escape برای متوقف کردن SQL injection کافی است؟
خیر. از prepared statementها با پارامترهای bindشده استفاده کنید. escape دستی بهآسانی اشتباه میشود، بهویژه با مجموعه کاراکترها و حالتهای مختلف SQL.
کدام گویش را انتخاب کنم؟
دو برابر کردن استاندارد در PostgreSQL، SQL Server، SQLite و Oracle کار میکند، و در MySQL مگر اینکه NO_BACKSLASH_ESCAPES تنظیم شده باشد. سبک MySQL برای متنی است که در MySQL اجرا میشود، جایی که بکاسلشها کاراکتر escape هستند.
چرا PostgreSQL بکاسلشهای من را نادیده میگیرد؟
PostgreSQL بهطور پیشفرض بکاسلشها را در رشتههای معمولی کاراکتر ساده میداند. از سبک استاندارد استفاده کنید، یا اگر escapeهای بکاسلش میخواهید از رشته E'...'.
الگوهای LIKE چه؟
درصد و زیرخط در LIKE wildcard هستند و کاراکتر escape مخصوص خود را میخواهند، که این ابزار اضافه نمیکند.