Aracılığıyla paylaş


Parametreler

Parametreler SQL ekleme saldırılarına karşı koruma sağlamak için kullanılır. Kullanıcı girişini SQL deyimleriyle birleştirmek yerine, girdinin yalnızca değişmez değer olarak ele alınıp hiçbir zaman yürütülmediğinden emin olmak için parametreleri kullanın. SQLite'te parametrelere genellikle SQL deyimlerinde bir değişmez değere izin verilen her yerde izin verilir.

Parametreler , :veya @ile ön eklenebilir$.

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

.NET değerlerinin SQLite değerlerine nasıl eşlendiği hakkında ayrıntılı bilgi için bkz. Veri türleri .

Kısaltma

Metin ve BLOB değerlerini kesmek için Size özelliğini kullanın.

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

Alternatif türler

Bazen alternatif bir SQLite türü kullanmak isteyebilirsiniz. SqliteType özelliğini ayarlayarak bunu yapın.

Aşağıdaki alternatif tür eşlemeleri kullanılabilir. Varsayılan eşlemeler için bkz. Veri türleri.

Değer SqliteType Açıklamalar
Karakter Tam sayı UTF-16
Sadece Tarih Gerçek Jülyen gün değeri
Tarih ve Saat Gerçek Jülyen gün değeri
TarihSaatÖtelemesi Gerçek Jülyen gün değeri
Kılavuz Damlacık
TimeOnly Gerçek Gün olarak
Zaman Aralığı Gerçek Gün olarak
command.CommandText =
@"
    SELECT count(*)
    FROM task
    WHERE finished IS NULL
        AND julianday('now') - julianday(started) > $expected
";
// Convert TimeSpan to days instead of text
command.Parameters.AddWithValue("$expected", expected).SqliteType = SqliteType.Real;

Çıkış parametreleri

SQLite, çıkış parametrelerini desteklemez. Bunun yerine sorgu sonuçlarındaki değerleri döndürür.

Ayrıca bakınız