Python - データベースの挿入について質問があります
某草草
某草草 2017-06-12 09:27:56
0
4
865

Python3 または sqlite3

info = "'ブラシカードレコードに挿入(ブラシカード日付、ブラシカード時刻、カード番号6061、カード番号6654) 値(?,?,?,?)',('2017-05-28','12:23:32', 123, 0)"

cur.execute(情報)

これはエラーを報告します: sqlite3.OperationalError

cur.execute('ブラシカードレコードに挿入(ブラシカード日付, ブラシカード時刻, カード番号6061, カード番号6654) 値(?,?,?,?)',('2017-05-28','12:23:32', 123 、0))

これはうまくいきます。

某草草
某草草

全員に返信(4)
代言

cur.execute には 2 つのパラメータがあり、1 つは SQL で、もう 1 つは SQL パラメータに値を渡すためのもので、二重引用符で囲まれた最初の文は文字列、つまりパラメータと同等ですが、2 番目のパラメータはそうではありません。渡されました

いいねを押す +0
世界只因有你

info = "ブラシカードレコードに挿入(ブラシカード日付、ブラシカード時刻、カード番号6061、カード番号6654) 値(%s,%s,%s,%s)"%('2017-05-28','12:23:32', 123 、0)

またはstr.format

いいねを押す +0
曾经蜡笔没有小新

リーリー

いいねを押す +0
曾经蜡笔没有小新

質問が見つかりました。ご回答いただきありがとうございます。

データベーステーブルへの新しいデータの挿入が動的である場合、より良い方法は、最初に str を生成し、それをパラメータとして cur.execute() に渡すことです。

コード例:

リーリー
いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート