0

私はフラスコとこのステートメントの実行に取り組んでいます

salt=os.urandom(32)

db_session.execute('insert into posUsers values (?, ?, ?, ?)',[usern,unhex("sjg"),salt,row.clientId])

unhex が定義されていないというエラーが表示されます。

更新-今、私はこれに変更しました

db_session.execute('insert into posUsers (username,passwd,salt,clientId    ) values (?,UNHEX("6568"),UNHEX("haf"), ?)',[usern,row.clientId])

新しいエラー「リ​​スト」オブジェクトには属性「キー」がありません。解決策はありますか?

4

1 に答える 1

1

これは、Python リストに渡すときに、存在しない Python 関数として扱われるためです。

SQLクエリ文字列に含める必要があります。

salt=os.urandom(32)

db_session.execute('insert into posUsers values (?,unhex("sjg"),?, ?)',[usern,salt,row.clientId])

unhex は mysql 関数であり、python 関数として扱われているため、エラーが発生します

于 2013-07-08T05:46:04.707 に答える