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

Daha iyi bir Windows için ...

yuxel

Microsoft, GNU/Linux kullanıcılarına, neden GNU/linux'u seçtikleri ve MS Windows'da neler görmek istediklerini öğrenmek için ev kullanıcıları ve kurumsal kullanıcılar için iki ayrı anket hazırlamış. Ev kullanıcıları için olan anketteki 15. soruda her ne kadar "possible" demişse de en üst satırlara "open your source" yazmayı ihmal etmedim ;)

En sinsi bilgisayar solucanı

pulsar

Bilgisayar virüsleri insanların kendilerini aktif hale getirmesi için bin bir türlü numaraya başvurdu, ancak son olarak yayılan bir virüs sinsilik konusunda öncekilere göre daha iddialı gözüküyor. Hard ya da Symantec virüsü olarak bilinen yeni solucan, kendisini bir anti-virüs uyarısı olarak ‘gizliyor’.

Microsoft'tan Vista İçin Korsan Önlemleri

Guardian

Rss ile ulaştığım Slashdot.org'daki kısa haber içeriği sayesinde bulduğum washingtonpost.com'daki habere göre, Microsoft'un yeni nesil işletim sistemi olarak adlandırdığı Vista işletim sistemi korsan kullanımlara karşı çeşitli önlemler içeriyormuş.

Belirtilen açıklamaya göre, işletim sistemi kurulduktan sonra ilk başta Vista'dan beklenen bazı özelliklere izin verilmeyecekmiş, dolayısıyla ilk kurulumda Vista'nın gelişen grafik ve diğer bazı özelliklerinden kullanıcı yararlanamayacakmış.

Microsoft'un KDE Merakı

Soulblighter

COMDEX fuarı ilginç bir olaya daha tanık oldu. Microsoft çalışanları fuardaki KDE standını ziyaret ederek, KDE'nin geliştiricisi George Staikos'dan KDE'nin demosunu istedi!

Windows 2000 ve Perl

darkness

Perl CGI öğrenmek istiyorsanız ya da sitelerinizi güçlendirmek istiyorsanız ille de UNIX bir sunucuya ihtiyacınız olmadığını söylemek isterim. Her işe bulaşmayı çok seven Microsoft Co. yine yapacağını yapmiş durumda hemde uzun bir süredir.