相关文章推荐
阳刚的饭盒  ·  Electron 对 SQLite ...·  2 周前    · 
发财的山寨机  ·  高级查询 · ...·  5 月前    · 
玩手机的数据线  ·  Grouping Constructs ...·  1 年前    · 
自信的冰淇淋  ·  Authenticating | ...·  1 年前    · 

參數可用來防範 SQL 插入式攻擊。 不要與 SQL 語句串連使用者輸入,而是使用參數來確保輸入只會被視為常值,且永遠不會執行。 在 SQLite 中,參數通常會允許在 SQL 語句中允許常值的任何位置。

參數的前置詞 : 可以是 、 @ $

command.CommandText =
    INSERT INTO user (name)
    VALUES ($name)
command.Parameters.AddWithValue("$name", name);

如需如何將 .NET 值對應至 SQLite 值的詳細資訊,請參閱資料類型

Size使用 屬性來截斷 TEXT 和 BLOB 值。

// Truncate name to 30 characters
command.Parameters.AddWithValue("$name", name).Size = 30;

有時候,您可能想要使用替代的 SQLite 類型。 藉由設定 屬性來執行 SqliteType 此動作。

您可以使用下列替代類型對應。 如需預設對應,請參閱 資料類型

SqliteType AND julianday('now') - julianday(started) > $expected // Convert TimeSpan to days instead of text command.Parameters.AddWithValue("$expected", expected).SqliteType = SqliteType.Real;

SQLite 不支援輸出參數。 改為傳回查詢結果中的值。