0
我們都知道Bobby Tables的故事,而不是僅僅使用來自用戶的字符串的簡單字符串插值。SQL查詢中的字符串插值:危險和/或錯誤? (python)
但我想知道的是,是否可以從我自己的硬編碼字符串中使用字符串插值。
例如,我看不出這是危險的,但我想確保。如果出於某種非安全原因,這只是錯誤的方式,我也想知道這一點。
table_dict = {'option1':'table_1','option2':'table_2'}
query_string = "SELECT * FROM {}".format(table_dict[string_from_front_end])
顯然,這是一個比我打算非常簡單的示例來實際做的 - 我真正的查詢是更長的時間 - ,但我的問題是關於字符串插值。
- 安全嗎?
- 有沒有更好的方法我應該這樣做?
除了使用像這樣的查詢進行字符串插值之外,您可以做的不多。 Prepared語句不能用於動態指定表/列名稱。 – Phylogenesis