Useful shortcuts for vi editor

Sunday, 19 January 2014

Windows makinelere F klavye ile login olma

Aşağıdaki adımları izleyerek F klavyenizle Windows makinenize login olabilirsiniz.
  1. Windows tuşu + R tuşlarına birlikte basın.
  2. regedit.exe yazıp, enter tuşuna basın.
  3. Soldaki menu yardımıyla HKEY_CURRENT_USER\Keyboard Layout\Preload yoluna gidin.
  4. Sağ tarafta, (1) yazan anahtara çift tıklayarak, 0000041F olan değeri 0001041f ile değiştirin. Ardından Tamam tuşuna basınız.
  5. Aynı şekilde, Soldaki menu yardımıyla HKEY_USERS\.DEFAULT\Keyboard Layout\Preload yoluna gidin.
  6. Sağ tarafta, (1) yazan anahtara çift tıklayarak, 0000041F olan değeri 0001041f ile değiştirin. Ardından Tamam tuşuna basınız..
  7. Son olarak regedit editörünü kapatabilirsiniz.
  8. Bir dahaki login işleminizde, F klavyenizi kullanabilirsiniz.
İyi çalışmalar.

Monday, 5 August 2013

Ücretsiz Antivirüs Dağıtımları

Sizler için bazı ücretsiz antivirüs dağıtımlarını derledim. Umarım faydalı olur.

Sunday, 3 February 2013

Künye

Sevgili blog okuyucuları,

Yaklaşık 2 senedir açık olan "Bir bilgisayarcını günlüğü" bloğunun şuana kadarki genel istatistiğini sizlerle paylaşmak istiyorum. Bu istatistiğe baktığımda hiç beklemediğim ülkelerden bile sayfalara erişildiğini gördüğümde hem sevindim hem de şaşırdım. :)

Bloğa yeni içerik girmeyi istiyorum fakat sizlerden de tavsiye bekliyorum. Hangi konularda yazmalıyım veya yazmamalıyım?

Sevgilerimle ve saygılarımla,

Alper


Wednesday, 21 March 2012

Masaüstü uygulamalar hakkında

Uzun bir aradan sonra arayı çok soğutmamak adına yeni bir entry (yazı) girmek istedim. :)

Vakit buldukça yazdığım masaüstü uygulamalarını (desktop app.) yayımladığım sitemi (aozsoyler.110mb.com) daha önce sizlerle paylaşmıştım. Bu uygulamaların daha çok kişiye ulaşması için tekrar hatırlatmak istedim. Bu arada sitedeki tüm uygulamalar ücretsizdir. Gönül rahatlığıyla kullanabilir ve dağıtabilirsiniz. :)

Dipnot: Yeni bir uygulama taze taze fırından çıktı. Haberiniz olsun istedim. http://aozsoyler.110mb.com/index.php?p=1_11

Tekrar buluşmak dileğiyle.. ;)

Saturday, 24 December 2011

C# ‘da iki tarih değeri arasındaki farkı bulma

C# kodlama yaparken iki tarih arasındaki farkı göstermek adına bir örnek vermek istiyorum. Tarih farkını sistem kütüphanesinde (system class) yer alan Timespan yapısı ile rahatça bulabiliriz. Bunun için aşağıdaki kod parçacığı işinizi görecektir.
// Timespan kullanımı
using System;

TimeSpan obj = DateTime.Parse("01/01/2012") - DateTime.Now;

Console.WriteLine("Yılbaşına sadece {0} gün, {1} saat, {2} dakika, {3} saniye kaldı.", obj.Days, obj.Hours, obj.Minutes, obj.Seconds);

Herkese iyi çalışmalar. :)

Wednesday, 28 September 2011

StringBuilder ve StringBuffer sınıfları arasındaki fark

Java'da herhangi bir yazı dizisini (string) RAM'de verimli kullanmak için kullanılan StringBuffer ve StringBuilder sınıflarının farkını kısaca açıklamak istiyorum.
  • StringBuilder; eğer ilgili yazı dizisi (string) yalnızca bir thread (iş parçası) için kullanılıyor ve değişiklik yapılıyorsa kullanılır. - senkronize (eş zamanlı) kullanıma uygun değildir.
  • StringBuffer; eğer ilgili yazı dizisi (string) birden fazla thread'de kullanılacaksa tercih edilir. - senkronize (eş zamanlı) kullanıma uygundur.
İyi çalışmalar. :)

Tuesday, 27 September 2011

C++ Başlarken

Bu yazıda C++ programlamaya merhaba diyeceğiz.
// C++ programlamaya merhaba

#include 
using namespace std;

int main ()
{
  cout << "Merhaba Dünya!";
  return 0;
}

Herkese iyi çalışmalar. :)

Monday, 12 September 2011

Call Center ve Contact Center Teknolojilerine Genel Bakış

Çağrı merkezleri ve iletişim merkezleri ile ilgili kısa bir blog yazısı yazmak istedim. Bu yazı da kısaca çağrı merkezleri ve iletişim merkezleri nedir ve ne iş yapar onu anlatmaya çalıştım.

Call Center

Call Center (Çağrı Merkezi); Yalnızca ses ile görüşmelerin yapıldığı bir servisidir. Customer (Müşteri), Agent (Müşteri temsilcisi) ile sesli olarak görüşerek sorunlarının çözülmesini sağlar.

Normal TDM Call Center

Geleneksel hat üzerinden (TDM) hizmet verir.

IP Call Center

IP telefonlar, VOIP (Voice over IP) kullanarak iletişim sağlanır. -geleneksel  hat yerine IP Network kullanır. Önemli bir diğer nokta; müşteriler yalnızca ses ile çağrı merkezine bağlanabilir.

Contact Center

Contact Center; sesin yanında veri ile de iletişim sağlayabilir. Desteklediği uygulamalara (IP Contact Center için) örnek olarak; e-mail, web tabanlı chat (web-based chat/instant messaging- IM), video, vb.

Normal TDM Contact Center

Geleneksel hat üzerinden (TDM) hizmet verir.  Gelişmiş TDM Call Center’da denebilir. Müşteriyle yalnızca ses ile iletişim kurar fakat daha kapsamlı çözümler üretebilir. (fatura ödeme, kredi kartı limit yükseltme, bilgi alma ve sorun çözümü, vs.)

IP Contact Center

IP networkü de kullanarak hizmet verir.

İyi çalışmalar. J

Network ve Protokoller Hakkında Kısa Kısa Bilgiler

Networkle ilgili bir blog yazısı daha önce paylaşmıştım. Bu yazı da ise network yapılarına ve kullanılan protokollere göz atmak istedim. Önce sık kullanılan networklerden bazılarını daha sonra bu networklerde yararlanılan protokolleri açıklamaya çalışacağım.

Networkler

TDM Network

TDM Network ayrılmış (dedicated) bir devre anahtarlama (circuit-switching) kullanan bir ağdır. 64 kbps’lık kanallardan haberleşme sağlar.

IP Network

Bilgisayar sistemine sahip her bilgisayarın yer aldığı ve haberleştiği ağdır. Haberleşmede IP protokolü kullanılır.

VOIP Network

VOIP networkde yer alan tüm cihazların ses ve medya haberleştikleri ağdır. IP Network üzerinden haberleşirler.

Protokoller

TDM (Time-division Multiplexing) Network Protocols

ISDN (Integrated Services Digital Network)

ISDN, mevcut analog telefon şebekesinin sayısal alternatifidir. Normal bir telefon hattı gibi bir telefon numarası çevirip hem sayısal, hem de analog hatlara ulaşım sağlanabilir. ISDN teknolojisini alışılmış analog hatlardan ayıran en önemli özellik tamamen sayısal temiz bir ses kanalı sağlamasının yanında, aynı anda veri (data) iletişimine de izin verebilmesidir. Ses, görüntü, veri gibi her türlü bilginin sayısal bir ortamda birleştirilip aynı hat üzerinden iletilmesinin sağlandığı bir haberleşme ağıdır.

ISDN, devre anahtarlamalı telefon sistemidir. Ayrıca paket anahtarlamalı networklere de bağlantı sağlayabillir.

PRI (Primary Rate Interface) ve BRI (Basic Rate Interface)

ISDN servislerinden birisidir. Düşük seviye müşterilerin (enterprice) kullanıdığı uygulamalarda ise BRI (Basic  Rate Interface) denmektedir.

E1 ve T1 (E-Carrier and T-Carrier)

Yalnızca ISDN de değil tüm haberleşmede E1 veya T1 taşıyıcılar kullanılır. PRI de ise ülkelere göre oluşturulmuş standartları için değişik kanal kullanılır. E1, (Europe) çoğunlukla Avrupa ülkelerinde ve Avustralyada kullanılır. T1 daha çok kuzey Amerikada ve Japonyada kullanılır.

SS7 (Signaling System No 7)

TDM networkde bir telefon görüşme bağlantısını kurmak (set up) için kullanılan protokoldür; arayan taraftan aranan tarafa bir sinyal gönderilir, karşı taraftan var olduğunu gösteren onay sinyali alındıktan sonra bağlantı sağlanır. Ayrıca ön ödeme mekanizmaları, numara çevirileri ve SMS gibi servislerde kullanılır.

IP Network Protocols

VOIP Protocols

VOIP (Voice over IP), UDP (Unreliable Data Transfer Protocol) kullanır.

SIP (Session Initiation Protocol) Protocol

SIP protokolü, IP network üzerinden ses ve video gönderi öncesindeki bağlantıyı kurmakla görevlidir. (SS7 gibi)

BICC (Bearer Independent Call Control)

SIP protokolü gibi BICC oturum (başka bir deyişle bağlantı) kurmakla (session control protocol) görevlidir. Cep telefonlarının ISDN üzerinden (ISUP) ACD (UAP) sistemleri gibi sistemlere bağlanmasını sağlar.

RTP (Real Time Transport Protocol) Protocol

VOIP üzerinden media (ses veya video) gönderirken kullanılır. SIP bağlantı kurduktan sonra devreye girer. Kaliteyi gözlemek ve iyileştirmek için RTCP (Real Time Transport Control Protocol) ile konuşur.

RTCP (Real Time Control Protocol)

Görüşme esnasında networkde kalite düşüklüğü tespit eder ve SIP’e bilgi verir. SIP bağlantıyı tekrar kurduğunda RTP’nin kullandığı codec’i daha düşük kalite (sıkıştırılmış) bir codec ile değiştirilir.

RTP codecs

H.323 standartlarında yer alan codecleri barındırır. Bunlar;

Ses için;
g.711 – en iyisi
g.729 ve g.723 – daha düşük kalitede (compressed – sıkıştırılmış)

Video için;
H.261, H.263, H.264

CIF (Common Intermediate Format)

Video konferans görüşmelerinde kullanılan video formatıdır. PAL veya NTSC standartlarına dönüşümü kolay olacak şekilde tasarlanmıştır.

TCP/IP (Transmission Control Protocol/ Internet Protocol)

Level 3 – Transport Katmanında taşıma protokolü olarak kullanılmaktadır. Güvenli olması sebebiyle (UDP’ye göre) yoğun olarak kullanılmaktadır.

UDP (User Datagram Protocol)

Paket-anahtarlama kullanan temel transfer birimlerinden olan datagramı ile iletişim sağlayan bir protokoldür. UDP genel olarak ses ve video haberleşmelerinde kullanılır. Güvenilir değildir ve gönderim garantisi yoktur. TCP/IP’ye göre hızlı fakat güvenilir değildir. (Güvenlik için yalnızca checksum var.)

ICMP (Internet Control Message Protocol) 

IP üzerinden kontrol mesajları gönderilmek için kullanılan protokoldür. UDP’ye benze fakat daha ondan daha basittir. Gönderilen mesajlar ilgili yazılım sayesinde yorumlanır. Network Katmanından gönderildiği için güvenilir değildir ve garanti sağlamaz. ICMP komutlarına örnek olarak ping ve traceroot verilebilir.

PPPoE (Point to Point Protocol Over Ethernet)

Ethernet kartı ile ADSL modem arasındaki iletişimi sağlayan protokoldür.

LDAP (Light Directory Access Protocol)

Örnek olarak, e-mail hesaplarında yer alan isim-telefon listesini ilgili yazılım bu protokol  ile elde etmektedir. LDAP server, verilerin bulunduğu directory (dizin) –den istenilen sorguları çekebilmektedir.

NGN (Next Generation Network)

Haberleşme için paket anahtarlamayı kullanır. Internet Protocol (IP) ve Multiprotocol Label Switching (MPLS)  içerir ve kullanır.

CSTA Protocol

CSTA, Intess’den farklı olarak 3. Parti yazılımlar ile sinyaleşme amacıyla kullanılıyor.

Uyarı: Açıklamaların bazılarında alıntılar olabilir. J

İyi çalışmalar. J

Sunday, 11 September 2011

Cisco Packet Tracer’da Static IP Route Örneği ve Diğer Bazı Komutlar

Bu yazıda Cisco Packet Tracer programı kullananlara yardımcı olmak amacıyla static IP route işleminin nasıl yapıldığını bir video örneği ile göstermek istiyorum. Buna ek olarak bilgi sahibi olmak adına diğer bazı komutları da paylaşacağım.

Static IP Route ile ilgili video:

Video

Video komutlarını ve diğer bazı komutları aşağıda bulabilirsiniz.

Router Ayarları

// Router'ın etkinleştirilmesi
-> enable (en)
// Terminale giriş
-> configure terminal (conf t)
// Hostname verilmesi
-> hostname R1
// Konsol şifresi verilmesi
-> line con 0
-> login
-> password 123
-> exit
// Telnet şifresi verilmesi
-> line vty 0 4
-> login
-> password 123
-> exit
// configure'da enable şifresi verme
-> enable password 123
-> enable secret abc
// telnet şifre iptali
-> line con 0
-> no pass
-> no password
// saat ve tarih ayalarma
-> en
-> clock set 10:30:15 11 JUL 2011
-> show clock
// Router üzerindeki interface'in hangi numaraya sahip olduğu bulma
-> show running-config
// RRT (Route Rout Table) ile ip route yapma
// VLAN oluşturma
// 2950 Switch için
-> configure terminal
-> vlan 2
-> name Satis
-> vlan 3
-> name Muhasebe
-> vlan 4
-> name Yonetim
// 2050 Seri Switchler için VLAN Üyelik
-> configure terminal
-> interface Ethernet 0/2
-> switchport Access vlan 2
-> exit
-> interface Ethernet 0/3
-> switchport Access vlan 3
-> exit
-> interface Ethernet 0/4
-> switchport Access vlan 4
-> exit
// Cihazlar arasındaki VLAN'ları taşımak için trunk bağlantı oluşturma
-> configure terminal
-> interface FastEthernek 0/1
-> trunk on
-> exit

 Herkese iyi çalışmalar dilerim. J

Genel Network Bilgileri

Anahtarlama:

Network konusu ile ilgili bazı genel bilgileri sizlerle paylaşmak istiyorum. Network dünyasında 2 çeşit anahtarlama (switching) kullanılır. Bunlar; devre anahtarlama (circuit switching) ve paket anahtarlama (package switching)dir. Bunların ne olduklarına sırasıyla bakalım.

Devre Anahtarlama (Circuit Switching)
  • Daha önce belirlenmiş kaynak kullanılıyor. (Yalnızca ona ait) 
  • Paylaşım yok. (Dedicated) 
  •  Performans garantili. (Sabit hız) 
  •  Örnek olarak; ISDN, ATM 
  •  Bandwith kullanıcılara iki şekilde dağıtılır; 
    • FDM (Frekans Dağılımlı Çoklayıcı) – belli bir frekans aralığı tahsis edilir. (Eski telefon sistemleri bunu kullanıyordu.) – TV yayınları ve telsiz sinyalleri 
    • TDM (Zaman Dağılımlı Çoklayıcı) – belli bir zaman aralığı tahsis edilir. (Modern telefon sistemleri bunu kullanıyor.) - GSM
Paket Anahtarlama (Package Switching)
  • İhtiyaç oranında kaynak/hat ortak kullanılıyor. (Herkes tarafından)
  • Paylaşım var. (Distrubuted)
  • Performans garantisi yok. (Değişken hız)
  • Örnek olarak; VOIP, Frame Relay, ATM
  • Paket yoğunlu olabiliyor.

Half Duplex – Full Duplex Nedir?

Cihazlar birbirleriyle (switch ile router gibi) haberleşirken kullandığı modlar bulunur. Bunlar half duplex ve full duplex’dir.

Half Duplex

Aynı anda yalnızca bir tarafa veri alabilir veya veri gönderebilir.

Full Duplex

Aynı anda her iki tarafta veri alabilir veya veri gönderebilir.

Bazı Kavramlar

Frame Relay

LAN ile WAN arasındaki bağlantıyı sağlıyor. Genellikle VoFR çözümlerinde kullanılıyor. Kiralık hatlara göre daha ucuzdur. Güvenlik riski vardır; paket akış kontrol bulunmamaktadır. (IP tarafında UDP’ye benzetilebilir.) Ağların birbirine fiziksel olarak bağlı olduğu için yüksek hızlar söz konusudur.

ATM (Asynchronous Transfer Mode)

Veri iletimi için bir çeşit paket anahtarlama tekniğine benzer bir anahtarlama (cell relay) kullanılır. Devre anahtarlama tekniklerini de kullanılabilme yeteneğine sahiptir.

PSTN (Public Switch Telephone Network)

Devre anahtarlama kullanan kamusal bir ağdır. Eskiden yalnızca sabit telefonlar için kullanılırken şuan dijital cihazlarda bu ağı kullanabilmektedir. – cep telefonları gibi.

PLMN (Public Land Mobile Network)

Telekomünikasyonu düzenleyici bir terimdir. Örneğin bir baz istasyonu bağlı olduğu PLMN ağı vardır. Bir cep telefonundan, bir ev telefonuna bağlanmak (route) için PSTN ağına bağlanması gerekir.

Packet Encapsulation

Paketler fiziksel katmana gelene kadar açılarak gelir. Sırasıyla katmandan geçerken ilgili katmanın işine yarar bilgiler alıp bir alt katmana verilir.

Örnek olarak;
Transport Katmanında, paket, segmentlere ayrılır.
Network Katmanında, paket, datagramlara (pakette yalnızca header ve data vardır) ayrılır.
Link Katmanında, paket, framelere ayrılır.
Physical Katmanda, paket, artık bitlere ayrılır.

OSI Modeli Katman Servisler Örnekleri

Application Layer (Aşağıdaki katmanlara herhangi bir servis sağlamaz): FTP, SMTP, HTTP
Presentation Layer: MPEG, GIF, JPEG, ASCII
Session Layer: SQL, NetBIOS (Local Network iletişiminde kullanılıyor.)
Transport Layer: TCP (Güvenli), UDP (Güvenli değil)
Network Layer: IP, ICMP (Internet Control Message Protocol- Hata mesajlarının gönderiminde kullanılıyor.)
Data Link Layer: ATM, Frame Relay (WAN için kullanılıyor, ISDN içinde kullanılıyor.)
Physical Layer: Kablolar, hub, repeater cihazları

Codec (“Cod”er “Dec”oder)

Çözücü (ingilizce Codec → coder ve decoder) veri ve sinyallerin dijital ortamda sıkıştırılarak kodlanması ve tekrar çözülmesini sağlayan bir araç veya bilgisayar programıdır. Herhangi bir video formatından başka bir video formatına (örneğin MPEG-2 yi MPEG-4 e veya MP3 ü WMA ya) dönüştürme işlemine Transcode (video çevirme) de denilmektedir.

VPN (Virtual Private Network)

Uzaktan güvenilir bir ağa bağlanmak istediğimizle kullanılan bir ağ yapısıdır. İç ağdaymış gibi e-mail vs gibi kişiye özel servisler kullanılabilir.

Uyarı: Yukarıda bahsi geçen yazılar alıntı içerebilir. J

İyi çalışmalar. J

IP PBX Cihazlarına Genel Bakış

Bu yazıda PBX (Private Branch Exchange) cihazlarının ne işe yaradıklarını kısaca anlatmaya çalışacağım.

PBX’ler, genellikle ofisdeki telefon hatlarını birbirine bağlamak ve yönlendirme amacıyla kullanılır. Diğer bir deyişle, ofisde şirkete özel bir santraldir. Kısaca, fiziksel hat hizmeti veren şirketten alınan hat sayısına bağlı olarak dış telefon networküne bağlanan, iç networkde de cihazın kapasitesine bağlı olarak kullanıcıların arasındaki hat geçişlerini otomatik olarak sağlar. Örneğin 5 hatlı 250 kullanıcılı bir pbx cihazında; dış networke en fazla 5 kullanıcı, iç networkde de en fazla 250 kullanıcı bu cihazdan faydalanabilir.

Pbxleri kabaca Normal PBX (yalnızca fiziksel telefon hattı) ve IP PBX (ayrıca IP bazlı diğer network hatları) olarak ayırabiliriz.

Normal PBX – eski sistem

PSTN/PLMN ağından gelen Circuit Switching (TDM/FDM) kullanan cihazlardan gelen çağrıları (yalnızca ses) ilgili kişilere yönlendirebilen, değiş-tokuş ettirebilen bir cihazdır.

IP PBX – yeni sistem

PSTN/PLMN ağı ile birlikte diğer ağlardan gelen devre-paket anahtarlama kullanan cihazlardan gelen (ses + video) çağrılarını ilgili kişilere yönledirebilen, değiş-tokuş ettirebilen bir cihazdır. IP telefonlar gibi cihazlardan (IP core network) gelen veriler VoIP üzerinden gatewayler yardımıyla haberleşme sağlanır.

İyi çalışmalar. J

Network Cihazlarına Genel Bakış

Bazı network cihazlarını genel bir bakış açısıyla kısaca açıklamak istedim. Genellikle seviyelerine göre sınıflandırılmış network cihazlarının bir kısmını anlatmaya çalışacağım.

Seviye 0 – Fiziksel katman cihazlarıyla haberleşir.

Repeater: Hat üzerinde zayıflayan sinyalleri güçlendirerek yeniden hatta verir.

Hub: Repeater ile aynı işi yapar fakat çoklu bağlantı yapılmasına imkan verir. Paket, ağ üzerindeki tüm cihazlara gider.

Seviye 1 – Veri İletim ve alt katman cihazlarıyla haberleşir.

Bridge: İki veya daha fazla Local Area Network’ünü birbirine bağlar ve aralarındaki trafiği filtrelemeye yarar.

Switch: Gelişmiş bridgelerdir. Hat üzerindeki haberleşmede Hub’dan farklı olarak MAC adreslerini kullanır ve böylece gönderilen paketin yalnızca alıcının almasını sağlar.

Seviye 2 – Ağ ve alt katman cihazlarıyla haberleşir.

Router: Farklı ağların arasındaki ağ trafiğini denetler ve yönlendirir. Amacı, örneğin switchlerden gelen paketlerin en doğru yoldan alıcıya gitmesi için IP adresine bakarak statik veya dinamik olarak karar verir.

Gateway: Farklı seviyede veya farklı protokollerde çalışan cihazların birbirleriyle olan bağlantısını sağlar ve gerekli dönüşümleri gerçekleştirir.

Firewall: Bir ağdaki cihazların ağ içi ve ağ dışı güvenliğini sağlar. Gerekli kurallar tanımlandırılarak cihazlara sınırlandırma getirir.

İyi çalışmalar. J

Sunday, 24 July 2011

Difference between Windows Sleep Command and Hibernate Command

I want to explain the difference between Sleep and Hibarnation that we encounter them while shutting down our computers.

Sleep; the active data go to RAM in order to save and a bit power consumption exists after the command (at standby).

Hibernation; the active data go to hard disc in order to save and no power consumption exists after the command (at standby).

Command for both of them;
C:\Windows\System32\rundll32.exe powrprof.dll,SetSuspendState 0,1,0

To activate hibernation;
powercfg -hibernate on

Should look at these:
http://ozsoyler.blogspot.com.tr/2015/02/how-to-activate-hibernate-option-in.html
http://ozsoyler.blogspot.com.tr/2015/02/how-to-adjust-hibernate-option-instead.html
 

Have a good work.

Korelasyon Analizi ve Regresyon Analizi Nedir?

Sıkça karşılaşılan korelasyon ve regresyon analizlerinin kısa tanımını ve farkını sizlerle paylaşmak istiyorum.

Korelasyon Analizi; iki veya daha çok değişken arasında ilişkinin varlığını, ilişki varsa yönünü ve gücünü inceler.

Regresyon Analizi; değişkenlerden birisi belirli bir birim değiştiği zaman, diğer değişkenlerin nasıl bir tepki verdiğini inceler.

İkisi arasındaki fark; korelasyon analizinde değişkenler arası ilişkiler incelenirken, diğer yanda regresyon analizinde ise; bir değişkenin değişiminde diğer değişkenlerin izlediği yol incelenir.

Herkese iyi çalışmalar. J

LINQ to XML işlemleri nasıl yapılır?

Kısaca, bu yazıda XML node (düğüm) ile çalışırken kullanabileceğiniz LINQ XML kütüphanesinde yer alan bazı yapıları tanıtacağım.

LINQ XML kütüphanesi yardımıyla, XML düğümleri ile çok rahat işlem yapabilir, isteklerinizi gerçekleştirebilirsiniz.

Şimdi aşağıdaki örnek kisi.xml dosyasına göre neler yapabiliriz ona bakalım.

<!-- kisi.xml -->
<?xml version="1.0" encoding="utf-8"?>
<Kisiler>
 <Kisi>
  <id>1</id>
  <ad>Alper</ad>
 </Kisi>
 <Kisi>
  <id>2</id>
  <ad>Ahmet</ad>
 </Kisi>
 <Kisi>
  <id>3</id>
  <ad>Mehmet</ad>
 </Kisi>
</Kisiler>
<!-- kisi.xml sonu-->

Belirtme (Import):

using System.Xml.Linq;

Elde etme:

XDocument xmldoc = XDocument.Load("kisi.xml");

XElement sorgu = (from xml_node in xmldoc.Descendants("Kisi")
                  where (int)xml_node.Element("id") == 1
                  select xml_node).FirstOrDefault();

Değiştirme:

sorgu.Element("ad").Value = "Alperinko";

Kayıt Silme:

sorgu.Remove();

Kayıtların İşlenmesi (Commit edilmesi):

xmldoc.Save("kisi.xml");

Herkese iyi çalışmalar. J

Saturday, 11 June 2011

Güncelleme

Sevgili blogseverler,

Blogumla ile ilgili bazı hususları sizinle paylaşmak istiyorum.

  • Blog yazma hızımın eskisi kadar olmadığı aşikâr, bundan sonra da çok sık yazı yazacağım şüpheli.
  • Blog yazılarını daha nadir yazacağımı belirtmek isterim.
  • Her ay yazmayı planladığım aylık rapor yazıılarını da 6 ayda bir olarak değiştirdim.
  • Gelen tepkilere göre; yukarıda bahsi geçen konularda değişiklik olabilir. :)
Sevgiyle kalın, hoşçakalın. J.

Wednesday, 18 May 2011

SQL Server Veri Tipleri Konu Listesi

SQL Server 2008’de yer alan veri tiplerini 7 ana kategoride inceleyebiliriz. Bunlar;
Bahsi geçen bu tipleri adım adım inceleyebilir ve birbirleri arasındaki farkları anlayabilirsiniz.

İyi çalışmalar.

T-SQL’de cursor, hierarchyid vs. gibi veri tipleri


Daha önceki yazılarımızda T-SQL’de kullanılan veri tiplerinden ayrı ayrı blog yazılarında bahsetmiştik.

Bu yazıda geriye kalan diğer veri tiplerine bakıyor olacağız.

Cursor:

Tanımı: Sorgu sonucunda çıkan değişkenleri elde edip, kullanmaya yarar.
Tanımlandırılması: Declare ornek_cursor CURSOR
FOR SELECT [tablo_sütun_ismi] FROM [tablo_ismi]

Sql_variant:

Tanımı: Sütun, parametre, değişken, UDF’dan dönen değerlerde kullanılır. Çeşitli veri tiplerine destek sağlar.
Tanımlandırılması: Declare @sql_variant datatype
Bellekte En Fazla Kapladığı Alan: 8016 byte.

Table:

Tanımı: Geçici olarak depolanır ve sorgu sonucunda dönen satırları saklamakta kullanılır.
Tanımlandırılması: Declare @table_dt TABLE (column_name column_data_type)

Hierarchyid:

Tanımı: Ağaç yardımıyla tablo içi veriler tasniflenir.
Tanımlandırılması: column_name hierarchyid

Timestamp:

Tanımı: tarih ve saat bilgisini kaydetmek için kullanılan bir veri tipidir ve ileride kullanılmayacağı belirtiliyor.
Tanımlandırılması: CREATE TABLE ExampleTable (PriKey int PRIMARY KEY, timestamp);
Bellekte Kapladığı Alan: 8 byte.
Uniqueidentifier:

Tanımı: Özgün bir kimlik tanımlamak için kullanılır. Bu kimliğe GUID denilmektedir. Diğer bilgisayarların aynı kimliği üretmesi ve böylece karışıklık çıkması mümkün değildir.
Tanımlandırılması: UniqueColumn UNIQUEIDENTIFIER DEFAULT NEWID()
Bellekteki Kapladığı Alan: 16 byte

Xml:

Tanımı: xml tipindeki verilere destek verir.

Daha fazla bilgi edinmek için buralara bakmanızı tavsiye ediyorum.


Herkese iyi çalışmalar. J