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

  • ChannelRichard

    ChannelRicha

    7 Kasım 2008
  • ColdfusTion

    ColdfusTion

    3 Aralık 2007
  • movies95

    movies95

    27 Kasım 2006