İstanbul

İstanbul aslında Türkiye’de yaşanması belki en zor şehir. Kalabalığı, karışıklığı, 3-4 km mesafedeki yerlere gitmenin araçla 1 saat, yayan olarak 30-45dk sürmesine sebep olan trafiği … Bugün yöneticimle konuşuyorum. İşten çıkıp eve gitmesi bazen 3 saat sürüyormuş. Harbiden yaşanacak yer değil bence. Ama malesef herşeyin merkezi İstanbul’da. Ve malesef herşey hala İstanbul’a yapılıyor. Bu durumda bütün bu saydığım yaşam zorluklarına karşın İstanbul iş bulması en kolay il haline geliyor. (en azından vasıflı işçi için)  Böylece de okulunu bitiren birçok kişi, belki kendi memleketlerinde hiç bir arayış içine girmeden, doğrudan istanbula geliyorlar. Çünkü herkes arasa da iş bulamayacağından emin. Bulsalar bile ne olacak? Genelde buldukları işlerden emeklerinin karşılığı olan parayı alamıyor (kendi işini kurabilen çok küçük bir azınlık dahil değildir sadece bu söylediğime). Çünkü çocuğun yaptığı işi (vasıflı işçi için konuşuyorum gene)  yapabileceği ya 1 ya 2 yer var. Buralarda çalışabiliyor. Bu durumda işverenin mantığı şöyle oluyor; ulan burdan çıksa nereye gidecek, mecbur çalışacak. Ve hakkını vermemekte diretiyor elemanının.  Buralarda kalanlar emeklerinin haklarını alamadıkları için mutsuz, gelenler şehrin stresinden … Siz hiç izliyor musunuz bilmiyorum yabancı TV lerde yayınlanan şaka programları var. Örneğin avrupa ülkelerinde insanların bu kamera şakalarına verdikleri tepkilere bir bakın. Aynı şakanın bizim ülkemizde yapıldığını düşünün birde. Adamı döverler. (Bu arada bizim ülkemizde yapılan bazı şakalar hakikatten tam sopalık onlardan bahsetmiyorum.) Çünkü bizde artık herkes gergin.

Bugün birkaç evrak işi için altı üstü 10 km lik bir mesafede 3 saatten fazla zaman harcadım. Beni bu yazıyı yazmaya iten sebep budur. Bütün bunları bu 3 saatin son 1 saatinde artık güneş kafama geçmeye başlayınca düşündüm. Hatalıysam uyarın. THE END.

SQL de escape karakteri kullanmak

Bazen sql de select çekerken aramak istediğimiz kriter SQL in önceden aktarılmış karakterlerinden biri olabilir. Örnek olarak aşağıdaki gibi bir script oluşturalım ve #zz şeklinde geçici bir tablo yaratalım.

select '%Master Deneme Deneme' Adi,1 ID into #zz

insert into #zz
select '%Deneme 1' ,2
union all
select 'Deneme 2', 3
union all
Select 'Slave',4
union all
select 'Slave % deneme', 5

Şimdi bu tabloda, Adi alanında % karakteri olan satırları getirmek istediğimizi farzedelim. Eğer bunu yapmak için

Select * from #zz where adi like '%%%'

yazarsak tablodaki bütün sonuçların döneceğini görürüz. Fakat bizim istediğimiz kayıtlar bunlar değildi. Biz sadece Adi alanı içinde % karakteri geçen satırların listelenmesini istemiştik. Böyle durumlarda yapmamız gereken şey diğer dillerde olduğu gibi ESCAPE karakteri kullanmak. Diğer birçok dilden farklı olarak bu gibi durumlarda SQL de escape karakterimizi kendimiz belirleriz. Yukarıdaki sorunumuzun çözümü olarak aşağıdaki kodu yazmamız gerekir

select * from #zz where adi like '%/%%' escape('/')

Burada belirlediğimiz / karakteri, ondan sonra gelen karakterin aktarılmış bir karakter değil, herhangi diğer bir karakter olduğu anlamına gelir. Yani anlayacağınız üzere ‘/’ yerine ‘a’ da yazabilirdik. Bu durumda sql ‘a’ dan bir sonraki karakter sql in herhangi birşey için kullandığı özel bir karakter olsa bile onu bu özel durumuyla değil diğer karakterleri değerlendirdiği gibi normal bir karakter olarak değerlendirirdi.

SQL’de view içeriklerini şifrelemek

Normalde bir view oluştururken eğer bunu yazarak yapacaksak şöyle bir ifade kullanırız

Create view ViewAdi
as
Select * from TabloAdi

Bu view’ı görüntülemek için

sp_helptext ViewAdi

Komutunu verdiğimizde yukarıda yazdığımız create ile başlayan kodun karşımıza çıktığını görürüz. Eğer view’ı aşağıdaki şekilde oluşturursak ;

Create view ViewAdi with ENCRYPTION
as
Select * from TabloAdi

Bu defa sp_helptext komutu ile baktığımızda bize “The text for object ‘ViewAdi’ is encrypted.” şeklinde bir mesaj verecek ve içeriği göstermeyecektir. Ayrıca object explorer ile baksak ve view uzerinde sağ tuş tıklasak bile karşımıza Design seçeneği pasif olarak geleceğinden view üzerinde değişiklik yapmak yada kodu görmek mümkün olmayacaktır.

Oluşturma sırasında WITH ENCRYPTION kullanımı SP, FUNCTION ve TRIGGER lar da da aynı sonucu verecektir. Bu objelerin çalışmasında bir değişiklik olmayacak fakat kodu görüntülenemeyecektir.

SQL Row_Number Fonksiyonu

SQL de bir tabloya bir sorgu çektiğimizi düşünelim.Sorugumuz şöyle bir sorgu olsun ;rowcount1

Sorgu sonucunda gelen her satırın başında, her satır için artan bir numara yazmak isteseydik ne yapardık? İşte bu durumda SQL in Row_Number() fronkisyonu imdadımıza yetişiyor. Ve bunu yaptırmak için kullanacağımız sorgu da şu şekilde olmalı ;

rowcount2

Sorguda “order by [FirstName]” yazdığımız alanı ihtiyacımıza göre istediğimiz gibi değiştirebiliriz.

Basit bir fonksiyon için uzun bile yazdım. Yardımcı olabilmesi dileğimle.

Bardağı yere bırakın

Profesör elinde içi dolu bir bardak tutarak dersine başladı
Herkesin göreceği bir şekilde tutuyordu ve ardından sordu :
“Bu bardağın ağırlığı sizce ne kadardır?”
’50gm!’ …. ‘100gm!’ …..’125gm’
..diye öğrenciler yanıtladı.
“Bardağı tartmadıkça gerçekten ben de bilemem,” dedi profüsör, “ama, benim sorum şu ki :
“Bu bardağı böyle birkaç dakikalığına tutsaydım ne olurdu?”
‘Hiçbir şey’ …..diye yanıtladı öğrenciler.
“Tamam peki 1 saat boyunca tutsaydım ne olurdu?” diye sordu profesör bu kez…
“Kolunuz ağrımaya başlardı efendim” diye öğrencilerden biri yanıtladı
“Haklısın, peki şimdi ben 1 gün boyunca tutsam ne olurdu?”
“Kolunuz iyice ağrır, kas spazmı, batar vs gibi sorunlar yaşardınız ve hastaneye gitmek zorunda kalırdınız!”….. tüm öğrenciler çeşitli yorumlar yaptı ve gülüştüler
“Çok iyi. Peki tüm bu sorunlar olurken bardağın ağırlığında bir değişme olur muydu?”
diye sordu profesür.
“Hayır….” diye yanıtladı herkes
Peki o zaman kolun ağrımasına ve kas spazmına neden olan neydi?”
Üğrenciler bulmaca çözermişçesine düşünmeye başladılar.
“Acıdan ve ağrıdan kurtulmak için ne yapmam gerekir bu durumda?”diye tekrar profesür sordu.
“Bardağı bırakın düşsün!” diye öğrencilerden biri yanıt verdi.
“Kesinlikle!” dedi, profesör.
“Hayatın problemleri de böyle bir şeydir. Onları kafanda birkaç dakika tutarsın. Bir sorun yokmuş gibi gürünür. Uzun bir süre düşünürsün. Başınız ağrımaya başlar.
Daha uzun düşünün. Artık seni bitirmeye ve hiçbir şey yapamamana neden olur.
Hayatınızdaki mücadeleleri ve problemleri düşünmek önemlidir,
Fakat DAHA ÖNEMLİSİ onları her günün sonunda, uyumadan önce yere bırakmaktır (bardak gibi). Bu şekilde strese girmez, ve her gün taze bir beyin ile uyanır ve her konuyla ve yolunuza çıkan her mücadele ile başa çıkabilecek güce sahip olursunuz!

Bu yüzden siz de her günün sonunda; BIRAKIN YERE BARDAĞI…

Merhaba dünya!

 

Merhaba dünya. Bu bir wordpress sayfası. Bu sayfa oluşturulurken wordpress bu başlığı kendisi oluşturuyor ve değiştirmenizi yada silmenizi istiyor. Fakat “Merhaba Dünya” cümlesi benim yaptığım işi yapanlar için, benim ne iş yaptığımı anlatma konusunda biçilmiş kaftan. İlk yazımın başlığının bu olmasını istedim ve başlığı değiştirmedim.

Benimle aynı mesleği yapmayanlar ve “Merhaba Dünya” nın anlamını bilmeyenler için ben bir Yazılım Uzmanıyım. Yaklaşık 8 senedir bu işle uğraşıyorum. Ama bu sayfa ile beraber artık birde Blog Yazarlığı işine bulaşıyorum.

Çok heyecanlıyım