首頁  >  文章  >  後端開發  >  我可以在 SQLite 中使用變數作為表名而不進行字串操作嗎?

我可以在 SQLite 中使用變數作為表名而不進行字串操作嗎?

Barbara Streisand
Barbara Streisand原創
2024-11-08 14:30:02194瀏覽

Can I Use a Variable as a Table Name in SQLite Without String Manipulation?

SQLite 中的變數表名稱

問:是否可以在SQLite 中使用變數作為表格的名稱,而無需藉助字串建構函數?

A1:不幸的是,沒有。表不能成為 SQLite 中參數替換的目標。

A2:為了降低注入風險,請考慮使用清理函數從表名稱中刪除潛在有害的字元。例如,以下函數可用於刪除非字母數字字元:

def scrub(table_name):
    return ''.join(chr for chr in table_name if chr.isalnum())

用法:

scrub('); drop tables --')  # returns 'droptables'

以上是我可以在 SQLite 中使用變數作為表名而不進行字串操作嗎?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn