sqlmapproject/sqlmap · error · SqlmapSyntaxException
only one non-SQL technique switch may be used at a time (fou
Error message
only one non-SQL technique switch may be used at a time (found: %s). each is a self-contained scan for a different back-end class - pick one
What it means
Error "only one non-SQL technique switch may be used at a time (found: %s). each is a self-contained scan for a different back-end class - pick one" thrown in sqlmapproject/sqlmap.
Source
Thrown at lib/core/option.py:2778
try:
page, _, _ = Request.getPage(url="https://check.torproject.org/api/ip", raise404=False)
tor_status = json.loads(page)
except (SqlmapConnectionException, TypeError, ValueError):
tor_status = None
if not tor_status or not tor_status.get("IsTor"):
errMsg = "it appears that Tor is not properly set. Please try using options '--tor-type' and/or '--tor-port'"
raise SqlmapConnectionException(errMsg)
else:
infoMsg = "Tor is properly being used"
logger.info(infoMsg)
def _basicOptionValidation():
_nonSqlTechniques = ["--%s" % _ for _ in NONSQL_TECHNIQUES if conf.get(_)]
if len(_nonSqlTechniques) > 1:
errMsg = "only one non-SQL technique switch may be used at a time (found: %s). " % ", ".join(_nonSqlTechniques)
errMsg += "each is a self-contained scan for a different back-end class - pick one"
raise SqlmapSyntaxException(errMsg)
if conf.limitStart is not None and not (isinstance(conf.limitStart, int) and conf.limitStart > 0):
errMsg = "value for option '--start' (limitStart) must be an integer value greater than zero (>0)"
raise SqlmapSyntaxException(errMsg)
if conf.limitStop is not None and not (isinstance(conf.limitStop, int) and conf.limitStop > 0):
errMsg = "value for option '--stop' (limitStop) must be an integer value greater than zero (>0)"
raise SqlmapSyntaxException(errMsg)
if conf.level is not None and not (isinstance(conf.level, int) and conf.level >= 1 and conf.level <= 5):
errMsg = "value for option '--level' must be an integer value from range [1, 5]"
raise SqlmapSyntaxException(errMsg)
if conf.risk is not None and not (isinstance(conf.risk, int) and conf.risk >= 1 and conf.risk <= 3):
errMsg = "value for option '--risk' must be an integer value from range [1, 3]"
raise SqlmapSyntaxException(errMsg)
if isinstance(conf.limitStart, int) and conf.limitStart > 0 and \View on GitHub (pinned to 0a35b20e39)
When it happens
Trigger: Thrown at lib/core/option.py:2778 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of sqlmapproject/sqlmap@0a35b20e39 (2026-08-26).
Data as JSON: /api/errors/5381b73c8a34104c.
Report an issue: GitHub.