Bu XML de neyin nesi ?

0
darkness
Kısa bir zaman öncesine kadar herhangi bir Veritabanı uygulamasından WEB üzerine bilgi aktarabilmek için ASP (Active Server Pages), OCX, DHTML gibi yöntemleri kullanıyorduk. Bu yöntemlerin her birinin birbirine göre avantaj ve dezavantajları vardı. ASP uygulamalarının geliştirilmesi kolay olmasına rağmen çok büyük kapasiteli sorgulamalarda pek de verimli çalışmadığı biliniyor.
ASP den daha da kolay geliştirilen OCX uygulamaları ise yüksek performans sağlamasının yanında kullanıcı tarafına yüklenmesi gereken ocx uzantılı dosyalara ihtiyaç duyması her zaman bir sorun olmakta ve genelde internet yerine intranet ortamlarında local çözümler olarak kullanılmaktaydı (bkz. Intranet ve OCX teknolojileri).

DHTML ise başta her şeye çözüm gibi lanse edilse de Microsoft Visual Studio 6.0‘ın ilk sürümlerinde artık DHTML standardını desteklemeyeceğini açıkladı. Buna rağmen Adobe firması meşhur Acrobat Reader'ı için bu teknolojiyi halen kullanıyor ama Adobe'un elindeki uygulamayı bilgisayarlara kurulumla dağıtmak gibi bir avantajı var, ve bu kullanış bizim gibi WEB üzerinde uygulama geliştirecek insanlar için ileriye dönük olarak bir gelecek vaat etmemekte.

Tam bu kısır döngünün içinde yönümüzü bulmaya çalışırken XML (Extensible Markup Language) ortaya çıktı ve alışıla gelmiş uygulama teknolojilerinden oldukça farklı bir yapısı olduğunu bizlere göstererek bir ümit ışığı oldu. MS SQL sunucu 2000 kurulumuyla standart olarak gelen XML desteği ile kullanımı oldukça kolay ve güçlü gözüküyor.

Peki nasıl yaparız?

SQL sunucu üzerinde bir `virtual server` (sanal sunucu) oluşturduktan sonra SQL sunucunun `Query Analyzer`ından yapabildiğimiz SELECT sorgularını aynen browserlarımız üzerinden de almamız mümkün olmakta. Fakat öncelikle XML’ın sorgularının nasıl sonuçlar verdiğini görmek için SQL server Query Analyzer üzerinde bir kaç deneme yapmakta fayda var. Fakat deneme yapacağınız tablo veya tabloların kayıt sayıları kabarıksa Tools/options menusunden maximum karakter setini 1000 gibi bir değer girmek durumundasınız. (Bu sayade sorgulama sonuçlarını tam olarak alma şansınız olacaktır) Query anayzer üzerindeyken yaptığımız herhangi bir sorgunun sonuna FOR XML RAW anahtarını girdiğimizde alışılagelmiş sonucun dışında bir sonuçla karşılarız. Evet hayırlı olsun ilk XML sorgunuz. Eğer sorgunuzu yapmadan önce tools menusunden query zamanlarını da göstermesini isterseniz normal sorgunuz ile XML sorgunuz arasındaki %40 lara varan bir fark olduğunu göreceksiniz yani XML daha hızlı çalışmakta. Sorguları internet tarayıcı üzerinden alabilmek içinse SQL sunucu üzerinde bir sanal sunucu oluşturmanız gerekir. Sanal Sunucu yarattıktan sonra tarayıcınızı açarak ve aşağıdaki biçimdeistediğiniz sorgulamayı girebilirsiniz.

http://localhost/htdata?sql=SELECT * FROM Personel WHERE ID=1 FOR XML AUTO

Bu sorguyu gönderdiğimizde tarayıcı hata verecektir çünkü boşluk karakterini anlayamayacaktır. Bu nedenle boşluk olan yerlere “+” girmemiz gerekecek ve biçimi biraz değiştirmeniz gerekecektir (* yerine fieldların hepsini yazmak gibi). Sonuç:

http://localhost/htData?SQL=SELECT+ID,+First_Name,+Last_Name+FROM+ Employee+FOR+XML+AUTO&Root=Employees

SQL standardının en bilindik komutu olan SELECT ile Veritabanları içerisindeki tablolardan ve görünüşlerden sorgulama yapabiliyoruz. SQL sunucunun bize ham olarak sunduğu bu datayı bilindik geliştirme yöntemleri ile kullanıcıların rahat olarak görebileceği ve anlayabileceği biçimlere sokabiliriz. İlk bakışta hiç anlaşılır olmayan XML sorgu sonuçlarının da aslında aynı mantık ile kullanıcıların anlayacağı biçimlere sokabiliriz. XML olarak alınan verinin ayrıştırılması oldukça zor gözükmekte fakat bu işlem insan gözü ve algılaması için zor olarak düşünülebilir. Yazılacak şablonlar ile ayrıştırma işleminin zorluğu tamamen bilgisayarlara bırakılabilir. Ee, zaten yapmaya çalıştığımız da hamal işleri işlemimizin engin gücüne bırakmak değil mi?

Görüşler

0
anonim
konuyla alakasi yok da sizin tepedeki banner saga kaymis gibi.1024'luk ekran kullaniyorum, iletisim kismi da calismiyordu.
kolay gele sizlere
0
anonim
o zaman ekranını düzelt hadi sanada kolay gele
0
SHiBuMi

XML`i ASP`nin ya da Relational DB`lerin yerine gececek bir teknoloji olarak görmek yanlis olur. Sonuc olarak RDBMS`ler verilerin SQL cercevesi icinde optimum düzeyde kullanimi icin hazirlanan yazilimlar. XML ise verileri optimum düzeyde saklayip optimum performans elde etmekten cok, bu verileri platformlar arasi bir düzen icersinde mümkün olan en esnek yapida ama en ufak hataya, standarttan sapmaya olanak vermeden saklamaya ve sunmaya dayali bir olay.

XML ile bütün bir müsteri veritabaninizi saklayamazsiniz ornegin bu büyük bir performans kaybi olur ama XML sayesinde daha dogrusu bir XML uygulamasi olan WML sayesinde bu bilgilerinize cep telefonunuz üzerinden yine RDBMS`nizin icinde yer alacak bicimde ulasabilirsiniz.

MSSQL`in XML`e maglup olmasina gelince, ona MSSQL`in ayibi diyelim ;o)

Görüş belirtmek için giriş yapın...

İlgili Yazılar

Opera 5 - Tarayıcı meselesi tamam, sıradaki!

butch

Uzunca bir süreden beri beklediğimiz Opera'nın yeni sürümünü indirdik - ki uzun sürmedi, çünkü sadece 2Mb - kurduk ve gördük ki artık "Şöyle adam gibi tarayıcımız olamadı bir türlü" diye dert yanmak için bir bahanemiz kalmadı.

MS Apple'ı Haritadan Sildi mi?

zilog

The Register'deki bir makalede , Microsoft'un uydu görüntülerinde Apple'ın merkezinin silindiği iddia edildi. Apple merkezinin olduğu bölge, MSN Virtual Earth'a göre burası, Google Maps' a göre ise burası!

Google Sky'a Microsoft'tan Rakip

huso

Microsoft şu an deneme aşamalarında olan WorldWideTelescope hizmetini duyurdu. worldwidetelescope.org sitesindeki örnek videolardan anlaşıldığı üzere, ürün Google Sky'a rakip olarak piyasaya çıkarıldı. Denemek isteyenler siteden indirip ürünü kullanabilirler. Bakalım Sky rakibi Telescope'dan başka ne yenilikler getirecek micros~1 bizlere...

Oracle`dan E-Mail Server Sürprizi

elrond

Oracle CEO` su Gary Ellison Comdex`te bombayı patlatmış. (Harbiden patlayabilir bu gelişme ama neyse...) Basın toplantısınıda Exchange Serverı unreliable ve unsecure olarak niteleyip(!) (Şimdiye kadar nerdeydin diye sorarlar ama yine neyse)Oracle 9i` ye E-Mail Eklentisi ekleyeceklerini açıklamış durumda.

Bu da oldu: Microsoft 20 bin satır kodunu Linux'a açtı

anonim

Microsoft sessiz sedasız 20bin satırlık olduğu söylenen bir device driver (aygıt sürücüsü) setini Linux kernel'inde kullanılması temennisi ile GPL v2 lisansı altında Linux camiasına bahşetti. Amaç "virtual machine"lere kurulan Linux'ların daha verimli ve hızlı çalışmasını sağlamak(mış).