无法加密字符串并将其插入sqlite

问题描述 投票:-2回答:1

我正在尝试将密码存储到sqlite数据库中,这是错误:

Traceback (most recent call last):
  File "/media/luis/Vista/Users/Administrador/PycharmProjects/PNV/sqlitetesting.py", line 33, in <module>
    """, encriptado)
TypeError: function takes exactly 1 argument (2 given)

我正在使用python 2.7,sqlite3和hashlib。这是代码:

    print "Password nao definida"
passadefinir = raw_input("Insira a sua password:")
clear()
passadefinir2 = raw_input("Insira novamente a sua password")
if passadefinir == passadefinir2:
    maindb.execute("DELETE FROM Password WHERE ID = 'not'")
    maindb.execute("INSERT INTO Password(ID) VALUES ('set')")
    encriptacao = hashlib.sha1(passadefinir2.encode())
    encriptado = (encriptacao.hexdigest(),)
    print (encriptado)
    maindb.executescript("""
    UPDATE Password
    SET Password = ?
    WHERE ID = 'set';
    """, encriptado)
    conn.commit()
python sqlite hashlib
1个回答
0
投票

使用maindb.execute而不是maindb.executescript

maindb.execute("""
UPDATE Password
SET Password = ?
WHERE ID = 'set';
""", encriptado)
© www.soinside.com 2019 - 2024. All rights reserved.