Fonksiyon kütüphanesi oluşturmaya devam ediyoruz ve Veritabanından random yani rastgele veri alırken neler kullanabileceğimize göz gezdiriyoruz..Bu konuda
* Array ile random veri seçmeyi* Access veritabanı ile random veri almayı* SQL veritabanı ile random veri almayıöğrenebilirsiniz.Diyelim ki elimizde bir dizi değişkenimiz var, bunlardan random yani rastgele olarak bir tane seçip kullanmak istiyoruz. Bu durumda defalarca işlem tekrarlatmaya gerek yok. Yine fonksiyon kütüphanemizin içine ekleyeceğimiz ufak bir kod kümesi ile istediğimiz alanda değişkenlerimiz vasıtasıyla array üzerinden bir değişken seçebiliriz.işte o kahraman kod:
<%Function RandomGetir(ArrayUzunluk)KatilanListesi = Array ("Kabuk", "Fıtık", "Lale", "Muz", "Gandalf", "Helezon", "Sör Vinstın")RandomizeDo while Len(GeciciSecim) < ArrayUzunlukGeciciSecim = GeciciSecim & KatilanListesi(Int ((Ubound(KatilanListesi) - 0 + 1) * Rnd + 0))loopRandomGetir = GeciciSecimEnd Function%>
Kullanım şekliyse çok basit;
<%Response.Write "Şimdi ki Şey: “& RandomGetir(1) &””
%>

Access İle Random Veri Alma
Peki şimdi diyeceksiniz ki bize bunun veritabanından veri getireni lazım. O zaman hemen conn adında bir veritabanı bağlantısı yaratıyorsunuz. Yada vereceğim kodda ki conn yerine kendi bağlantınızı yazıyorsunuz ve access veritabanından random seçim yapıyorsunuz.<%Set Rs = Server.CreateObject("ADODB.Recordset" )Rs.Open("SELECT * FROM tabloadi"),conn,1,3Randomizekac = Int((rs.RecordCount * Rnd)+ 0)Rs.Move(kac)GelenDegisken = Rs("sutunadi" )Rs.Close : Set Rs=NothingResponse.write GelenDegisken%>
SQL ile Random Veri Alma
Pekii buda işinizi görmedi çünkü access değil SQL de çalışıyorsunuz. O zaman işimiz çok daha kolay. DB bağlantımızı yaptık değil mi ?Buyrun kodumuz:Set rs = Conn.Execute(“SELECT * FROM tablo adi order by rand() limit 1”)Response.write rs(“sutunadi”)
SQL de gördüğünüz üzere iş çok daha kolay. Sunucunun sql tarafında işlemi hallettik. Tabiki de yine her zaman olduğu gibi bu performans yarışını SQL kazanmış oldu 🙂