CodeBlanks Logo Icon CodeBlanks

Parametreli sorgu

Prepared statement kullanmayı öğrenirsin.

Parametreli sorgu

Parametreli sorgu, değeri SQL gövdesinden ayrı tutar. $1 yer tutucusu veriyi güvenle taşır; EXECUTE ile değer verilir.

PREPARE check_user(text) AS
SELECT * FROM users WHERE email = $1;
EXECUTE check_user('a@b.com');

Bu sorgu parametreli sorgu değeri ayırır.

users kaynağından tüm sütunlar seçilir. WHERE email = $1 koşulunu sağlamayan satırlar elenir.

Parametreli sorgu — ayrıntı

Hazırlanan plan önbelleğe alınır; tekrarlayan sorgularda hem hız hem güvenlik sağlar. Parametre sayısı ve türü PREPARE'da belirtilir, EXECUTE'da sırayla verilir.

Uygulama Parametreli sorgu

check_user prepared sorgusunu 'a@b.com' değeriyle çalıştır.

Başlangıç kodu

query.sql
-- parametreli sorgu
EXECUTE

Örnek çözüm

query.sql
EXECUTE check_user('a@b.com');

Beklenen çıktı

id  email   name
1   a@b.com Ayşe

Soru ve cevaplar

Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.

1 Sorguyu çalıştır

Soru
____ check_user('a@b.com');
Cevap
EXECUTE check_user('a@b.com');

Açıklama: EXECUTE doğru cevap.

2 $1 neyi temsil eder?

  • Tablo adı
  • Dizin adı
  • Parametre yer tutucusu Doğru cevap
  • Sütun adı

Açıklama: $1 parametre yer tutucusudur.

3 Parametreli sorgu: kavramları eşleştir

Kavram Anlamı
parameter parametre
placeholder yer tutucu
EXECUTE çalıştır
cache önbellek

Uzman bölümündeki tüm dersler