''selecT'' Sorgusu ile MScript sembollerine veri aktarma

Top  Previous  Next

RelDBUpdateProcess, RelDBQueryProcess ve RelDBQueryDataSource sorgularında; veritabanından bilgi almak için, select ifadesinin çok özel bir şekilde kullanımı mümkündür.

Eğer bir select ifadesini tam olarak selecT şeklinde (sondaki "T" karakteri hariç tüm diğer karakterler küçük harfle) kullanırsanız, bu ifade; RelDB bileşeni  modülleri için özel bir anlam ifade eder.

RelDB bileşeni modülleri ; bir selecT ifadesi ile karşılaşıldığında bu ifadeyi çalıştırıp sonuç kümesini elde ettikten sonra, sonuç kümesinde yer alan alanların değerlerini tanımlanan MScript sembollerine atar.

Uyarı!
selecT sorgusunun sonuç kümesinde sadece bir tek kayıt olmalıdır. Sonuç kümesinde yer alan birinci dışındaki kayıtlar dikkate alınmazlar.

Örnek 1:

Aşağıdaki selecT ifadesi ile abc tablosuna eklenen kaydın kimliği "ROWID" adlı bir işlem kaydı alanına aktarılmaktadır.

 
INSERT INTO TABLE abc (F1, F2) VALUES(V1, V2);

selecT @@IDENTITY AS v:ROWID; 

 

Örnek 2:

Aşağıdaki selecT ifadesi ile products tablosundaki en yüksek ve en düşük fiyatlar MAXPRICE ve MINPRICE adlı havuz değişkenlerine aktarılmaktadır.

selecT max(PRICE) as v:MAXPRICE, min(PRICE) as v:MINPRICE FROM products; 

 

Uyarı!
Kullanılmakta olan veritabanına bağlı olarak sonuç kümesinde yer alan alanların adları büyük harflere veya küçük harflere dönüştürülebilir. Örneğin veritabanı Oracle olduğunda selecT max(PRICE) as v:maxprice gibi bir tanım yapılsa bile değişken havuzundaki sembolun adı "MAXPRICE" olacaktır.

PostgreSQL ise Oracle'ın tam tersine sonuç kümesindeki alan adlarını küçük harfe çevirir: Örneğin selecT max(PRICE) as v:MAXPRICE tanımında değişken havuzundaki alanın adı "maxprice" olur.