簡體   English   中英

如何配置sqlite列,使其可以采用任何類型的值

[英]How to configure sqlite column so that it can take any kind of values

cur.execute(“插入到taula(時間,用戶名, tweet ,位置)值(%s,%s,%s,%s)”%(time.time(),用戶名,tweet,位置))

用戶名,tweet和location是我來自twitter流的值

假設我的推文包含“ RT @ Nicksnacs4u:1964年福特Galaxie經銷商促銷模型車//通過繼承”

我需要配置我的tweet列,以便它可以接受任何類型的文本,無論是否包含@ Nicksnacs4u之類的特殊字符。 目前它失敗了,因為某些推文包含#sometext,@username%,$之類的文本

請幫忙!!

您應該在SQL語句中使用占位符,而不要自己格式化它們。

cur.execute(
    'INSERT INTO taula(time, username, tweet, location) VALUES (?,?,?,?)',
    (time.time(), username, tweet, location),
)

請閱讀https://docs.python.org/2/library/sqlite3.html了解更多詳細信息。 通過格式化自己的SQL語句,您可以打開一些討厭的SQL注入攻擊的大門。

xkcd 327

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM