使用execute()执行多个sql语句

kknvjkwl  于 2021-08-09  发布在  Java
关注(0)|答案(1)|浏览(612)

我想做一个 SQL injection 在我的服务器里。我正在使用命令:

cursor.execute("select * from some_table")

在我的服务器中执行sql命令。但是有没有一种方法可以用同一个命令执行多个命令呢 execute() 功能。
我试过:

cursor.execute("select * from some_table ; INSERT INTO ...")

dbms是 mariadb

yshpjwxd

yshpjwxd1#

下面是sql注入策略的概述。您尝试执行的操作称为堆叠查询。似乎至少大多数数据库api都阻止了这种策略。
您提到的mariadb基本上与mysql相同。
尽管python没有被显式列出,但我还假设python数据库api阻止了查询堆叠。
更新:当您检查 execute() 你可以看到有一个参数 multi 默认为 False . 只要你不把它设成 True ,你应该安全。

相关问题