Char | Engin Polat\'ın Windows 8 , Windows Phone 8 ve C# içerikli programcılık sitesi

Arşiv

Etiketlenen yazılar char

Sql Server 2008 Except ve Intersect Anahtar Kelimeleri

03 May 2011 Yorum yapılmamış

Sql Server 2008, T-SQL diline yapılmış birkaç ek geliştirme ile birlikte geldi. Daha önce yazdığım şu makaleden SQL Server 2008 MERGE operatörü hakkında bilgi alabilirsiniz.

Bugün yazacağım yazı ile EXCEPT ve INTERSECT operatörlerini inceleyeceğim.

Hem EXCEPT, hem de INTERSECT operatörü iki farklı sorgunun karşılaştırılması ve bir sonuç kümesi döndürülmesi ilkesi ile çalışır.

t-sql intersect ve except

EXCEPT anahtar kelimesi ile, bir sorgunun sonuç kümesinde olan, fakat diğer sorgunun sonuç kümesinde kesinlikle olmayan kayıtları buluruz.

TABLO1’de bulunup, TABLO2’de bulunmayan kayıtlar

SELECT * FROM TABLO1
EXCEPT
SELECT * FROM TABLO2

TABLO2’de bulunup, TABLO1’de bulunmayan kayıtlar

SELECT * FROM TABLO2
EXCEPT
SELECT * FROM TABLO1

INTERSECT anahtar kelimesi ile ise, her iki sorgunun sonuç kümesinde de kesinlikle olan kayıtları bulabiliriz.

Hem TABLO1’de bulunup, hem de TABLO2’de bulunan kayıtlar

SELECT * FROM TABLO1
INTERSECT
SELECT * FROM TABLO2

Bir örnek ile daha iyi anlaşılacak. Öncelikle Personel ve Stajer tablolarımızı oluşturalım.

CREATE TABLE dbo.Personel
(
	ID INT NOT NULL IDENTITY,
	AdSoyad VARCHAR(100) NOT NULL,
	SicilNo CHAR(6) NOT NULL,
	EMail VARCHAR(100) NOT NULL,
	IseGirisTarihi SMALLDATETIME NOT NULL,
	YoneticiID INT NOT NULL,
	DepartmanID NOT NULL
)
CREATE TABLE dbo.Stajer
(
	ID INT NOT NULL IDENTITY,
	AdSoyad VARCHAR(100) NOT NULL,
	StajerNo CHAR(6) NOT NULL,
	EMail VARCHAR(100) NOT NULL,
	StajBaslangicTarihi SMALLDATETIME NOT NULL,
	YoneticiID INT NOT NULL,
	StajDepartmanID NOT NULL
)

İlk olarak, staj yapmamış personel’in adını seçeceğimiz sorguyu yazalım;

SELECT AdSoyad FROM dbo.Personel
EXCEPT
SELECT AdSoyad FROM dbo.Stajer

İkinci olarak, işe başlamamış olan stajer’lerin adını seçeceğimiz sorguyu yazalım;

SELECT AdSoyad FROM dbo.Stajer
EXCEPT
SELECT AdSoyad FROM dbo.Personel

Son olarak, hem staj yapıp, hem de işe başlamış olan personel’in adını seçeceğimiz sorguyu yazalım;

SELECT AdSoyad FROM dbo.Personel
INTERSECT
SELECT AdSoyad FROM dbo.Stajer

C# Veri Tipleri

27 July 2010 1 yorum

Uygulamalarımızın olmazsa olmaz unsurları herhalde değişkenlerdir. Orta ölçekli bir uygulamada, kabaca bir tahminle yüzlerce değişken tanımlıyoruzdur.

Kullanım yoğunluğuna bakarak, oluşturduğumuz değişkenlerin tiplerinin doğru belirlenmesinin ne kadar önemli olduğunu anlayabiliriz.

C# ile kullanabileceğimiz değişkenlerin en önemlilerini aşağıda listeledim;

Veri Tipi Kapladığı Alan Değer Aralığı
Tam Sayı Veri Tipleri
sbyte 1 byte -128 ve +127
byte 1 byte 0 ve +255
short 2 byte -32768 ve +32767
ushort 2 byte 0 ve 65535
int 4 byte -2.147.483.648 ve +2.147.483.647
uint 4 byte 0 ve 4.294.967.295
long 8 byte -9.223.372.036.854.775.808 ve +9.223.372.036.854.775.807
ulong 8 byte 0 ve 18,446,744,073,709,551,615
Noktalı Sayı Veri Tipleri
single 4 byte -3.402823E38 ve +3.402823E38
double 8 byte -1.79769313486232E308 ve +1.79769313486232E308
decimal 16 byte -7.9E1028 ve +7.9E1028
Diğer Veri Tipleri
char 2 byte Tek Karakter
string ~ (2 byte x harf adedi) Karakter Dizisi
bool 4 byte True veya False
DateTime 8 byte 1/1/0001 12:00:00 ve 31/12/9999 23:59:59

Dosya veya Dizin isimlendirirken kullanmamanız gereken karakterler

05 March 2010 Yorum yapılmamış

System.IO namespace‘inde yer alan Path class‘ının

GetInvalidFileNameChars()

GetInvalidPathChars()

methodlarını kullanarak dosya veya dizin isimlendirirken kullanmamanız gereken karakterleri bulabilirsiniz.

Her iki method’dan da geriye char[] döner.

MSDN’de şuradaki makaleden GetInvalidFileNameChars() methodu ile ilgili ayrıntılı bilgiye ulaşabilirsiniz.

MSDN’de şuradaki makaleden GetInvalidPathChars() methodu ile ilgili ayrıntılı bilgiye ulaşabilirsiniz.

Kısa Sınav – 9

13 December 2009 1 yorum

Sql Server’da veritabanında zaten varolan bir tabloya yeni bir alan eklemek istiyorsunuz. Yeni ekleyeceğiniz alanda, PersonelNo bilgisini saklayacaksınız.

PersonelNo bilgisi herzaman 5 karakterden oluşuyor. Dünya üzerinde çeşitli ülkelerde çalışan yüzlerce çalışanınız olduğu için, PersonelNo alanında saklayacağınız bilgiler genelde Unicode karakterlerden oluşuyor.

PersonelNo alanı için en uygun veritipi ne olmalı?

  • nvarchar(5)
  • varchar(50)
  • nchar(5)
  • char(5)

Sorunun doğru cevabı için; Devamını oku…