SORU
28 EKİM 2008, Salı


Neden birisi 1=1 NEREDE kullanmak istiyorsunuz VE &; koşullar lt> SQL tümcesi?

Neden birisi bir fıkra SQL (SQL dizeleri birleştirilmiş yoluyla elde edilen, ya da görünüm tanımı) WHERE 1=1 AND <conditions> kullanmak istiyorsunuz

Bu SQL Enjeksiyon karşı korumak için kullanılan, bir yerde görmüştüm, ama çok garip görünüyor.

Eğer enjeksiyon varsa WHERE 1 = 1 AND injected OR 1=1 injected OR 1=1 aynı sonuç olurdu.

Görünüm tanımında kullanımı Ne olacak? Düzenle sonra:


Cevaplarınız için teşekkür ederim.

Hala, Neden kimse bir görünüm tanımlamak için bu yapı kullanın, ya da içinde saklı bir yordam kullanmak istiyorsunuz anlamıyorum.

Örneğin: "bunu alın

CREATE VIEW vTest AS
SELECT FROM Table WHERE 1=1 AND table.Field=Value

CEVAP
28 EKİM 2008, Salı


Koşullar listesini derleme zamanında bilinen ve zamanında inşa edilmiştir bunun yerine, bir veya birden çok durumun var olup olmadığı hakkında endişelenmenize gerek yok. Hepsini gibi oluşturabilirsiniz:

and <condition>

ve hepsini bir arada birlikte. Başında 1=1, and başlangıç ile ilişkilendirmek için bir şey vardır.

Pek yardımcı olacak gibi bu görünmüyor dediğiniz gibi enjeksiyon her türlü koruma için kullanılan, gördüm. Benvaruygulama bir kolaylık olarak görülüyor. SQL sorgu motoru performans etkisi olması gerekir bu yüzden 1=1 görmezden sona erecek.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Kayla Caton - Peet

    Kayla Caton

    23 HAZİRAN 2012
  • MultiPlayStationMan

    MultiPlaySta

    17 Aralık 2009
  • UKF Dubstep

    UKF Dubstep

    29 NİSAN 2009