语法错误:运行 Python 代码时在保存数据到 sqli 时扫描字符串文字"

2024-05-29 11:42:41 发布

您现在位置:Python中文网/ 问答频道 /正文

我想把数据保存在sqlite数据库中,数据是@function和size、block size和dump(从@f&return数据中提取并读取@size字节)这些数据是通过分析二进制文件得到的。 Screenshot shwing the data

 try:
                con = lite.connect('younes.db')
                c = con.cursor()
                c.execute(" CREATE TABLE IF NOT EXISTS  disas(NAMEvarchar(20),STADDR INTEGER,BLOCK INTEGER, DUMP BLOB )")

                c.execute("INSERT INTO disas VALUES ('"+f.name+"', "+str(f.addr)+", "+str(b.size)+",'"+dump+"')

    except lite.Error, e:
            if con:
                con.rollback()
                print "Error %s:" % e.args[0]
                sys.exit(1)
    finally:
             if con:
                c.close()
                con.close()


  File "testy.py", line 58
        c.execute("INSERT INTO disas VALUES ('"+f.name+"', "+str(f.addr)+", "+str(b.size)+",'"+dump+"')^
     SyntaxError: EOL while scanning string literal

Tags: 数据nameexecutesizeerrorintegerlitecon
1条回答
网友
1楼 · 发布于 2024-05-29 11:42:41

字符串中缺少一个结束符"以及一个结束符)。在

应该是这样的:

c.execute("INSERT INTO disas VALUES ('" + f.name + "', " + str(f.addr) + ", " + str(b.size) + ",'" + dump + "')")

如果您执行以下操作,则更容易读取字符串:

^{pr2}$

这更容易阅读,更容易发现你错在哪里。在

相关问题 更多 >

    热门问题