Translate
17 Aralık 2014 Çarşamba
PL/SQL(2): Cursor Kullanımı
Selamlar, bu yazıda pl/sql cursor kullanımı anlatılacaktır. Öncelikle, kullanacağımız basit bir table oluşturuyoruz;
CREATE TABLE dersler
(
id INTEGER,
ad VARCHAR2(50)
);
Tabloya kayıtları insert ediyoruz;
insert into dersler(id,ad) values(1,'A');
insert into dersler(id,ad) values(2,'B');
insert into dersler(id,ad) values(3,'C');
insert into dersler(id,ad) values(4,'D');
insert into dersler(id,ad) values(5,'E');
Cursor kullanıma dair ilgili script örneğini şu şekildedir;
DECLARE
c_id dersler.id%type;
c_ad dersler.ad%type;
CURSOR c_dersler is
SELECT id,ad FROM dersler where id>3;
BEGIN
OPEN c_dersler;--cursor acılıyor.
LOOP
FETCH c_dersler into c_id, c_ad;--cursordaki o anki satır verileri degiskenlere aktarılıyor.
EXIT WHEN c_dersler%notfound;--cursorda veri kalmadıgı surece dongu bir sonraki veriye gecerek devam ediyor.
IF c_id<5 THEN--id'si 5 den kücük kontrolü yapılıyor.
dbms_output.put_line(c_id || '=>' || c_ad);
END IF;
END LOOP;
CLOSE c_dersler;--islem sonrasında cursor kapatılıyor.
END;
/
Scripti çalıştırdığınızda output olarak göreceğiniz değer ; 4=>D
Cursor kullanımı ile;
1)İstediğiniz tablo ile ilgili olarak tüm dataların kontrollerini dongu vasıtasıyla satır satır kontrol edebilmeniz mümkündür.
2)İlgilendiğiniz tablodaki istediğiniz şartlara uyan dataları çekebilmenizi ve işleyebilmenizi sağlar.
Script örneğinde; dersler tablosunda yer alan ders adlarını ve id bilgilerinden id'si 3 den büyük dataları cursor ile ilişkilendirmiş oluyoruz. Döngü içerisinde ise cursor da bulunan id'si 3 den büyük verilerden id'si 5 den küçük olan (id=4) ekrana basılmış oluyor.
Bu ders ile cursor kullanımına dair fikir edinebilmeniz amaçlanarak basit bir örnek üzerinden anlatım gerçekleştirilmiştir. Faydalı olması dileğiyle, sağlıcakla...
11 Aralık 2014 Perşembe
Android Studio Türkçe Karakter Sorunu
Merhabalar, bu yazıda Android Studio da uygulama geliştirirken yaşanabilecek Türkçe karakter sorununun çözümü anlatılacaktır.
Uygulamanızın yer aldığı;
ekrandaki işaretli alanı açıyoruz. Açılan ekranda;
şekilde, işaretli kod parçasını ekliyoruz. Projeyi kaydederek compile etmeniz gerekmektedir. Sonrasında projenizdeki Türkçe karakter sorunu çözülmüş olacaktır.
Faydalı olması dileğiyle, sağlıcakla...
9 Aralık 2014 Salı
PL/SQL(1): Associative (İlişkilendirilebilir) Diziler
Merhabalalar, bu yazıda Associative Arrays (ilişkilendirilebilir diziler) den bahsedilecektir. Örnek kod bloğu aşağıdaki gibidir.
DECLARE
TYPE Kitap IS RECORD --Kitap nesnesi olusturuluyor.
(
kitap_adi VARCHAR2(30),
yazari VARCHAR2(30)
);
TYPE map_Raf IS TABLE OF Kitap --Kitap nesnesi tipinde dizi olusturuluyor.
INDEX BY PLS_INTEGER;
l_kitap Kitap;
l_raf map_Raf;
i INTEGER;
BEGIN
l_raf (1).kitap_adi := 'Dijital Kale'; -- dizi dolduruluyor.
l_raf (1).yazari := 'Dan Brown';
l_raf (2).kitap_adi := 'Su Cilgin Turkler'; -- dizi dolduruluyor.
l_raf (2).yazari := 'Turgut Ozakman';
FOR i IN l_raf.FIRST..l_raf.LAST LOOP --dizi nesne özellikleri gosteriliyor.
dbms_output.put_line(i || '. Raf :');
dbms_output.put_line(' Kitap Adı=> ' || l_raf(i).kitap_adi || ',Yazari=> ' || l_raf(i).yazari);
END LOOP;
END;
/
Faydalı olması dileğiyle, sağlıcakla...
1 Aralık 2014 Pazartesi
Android SDK Manager Failed to fetch URL Hatası
Merhabalar, bu yazıda Android SDK Manager i açtığınızda karşılaşabileceğiniz;
Fetching https://dl-ssl.google.com/android/repository/addons_list-2.xml
Fetched Add-ons List successfully
Fetching URL: https://dl-ssl.google.com/android/repository/repository-7.xml
Done loading packages. Fetching https://dl-ssl.google.com/android/repository/addons_list-2.xml Failed to fetch URL https://dl-ssl.google.com/android/repository/addons_list-2.xml, reason: Cannot assign requested address: connect
Fetched Add-ons List successfully
Fetching URL: https://dl-ssl.google.com/android/repository/repository-7.xml
Failed to fetch URL https://dl-ssl.google.com/android/repository/repository-7.xml, reason: Bind Cannot assign requested address: connect
Done loading packages.
hatasının çözümüne değinmek istiyorum. Öncelikle Android SDK Manager i açıp , Tools >> Options ekranını açıyoruz ve aşağıdaki gibi gerekli değişiklikleri yapıp, Clear Cache tıkladıktan sonra Close ile çıkışı yapıyoruz.
28 Ekim 2014 Salı
Android Programlama(5): Alert Dialog (Mesaj Kutusu) Kullanımı
Selamlar bu yazıda Alert Dialog kullanımının gösterildiği kod bloğu paylaşılacaktır. Uygulamanızın çıkışında kullanıcıya gösterilecek bir mesaj kutusu ile uygulama çıkışı ile ilgili seçim yaptırılmıştır. Kullanıcı evet butonuna tıkladığında activity sonlandırılmış, hayır butonuna tıklandığında ise işlem yapılmayarak mesaj kutusu kapatılmıştır. Kod bloğu ve açıklamaları şu şekildedir;
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK) {//geri tuşuna basılma durum kontrolü
AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setTitle("Uygulama Çıkış İzni")
.setMessage("Çıkış Yapmak İstiyor Musunuz?")
.setIcon(android.R.drawable.ic_dialog_alert)
.setPositiveButton("Evet",
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog,
int which) {
finish();//çıkış , activty sonlandır.
moveTaskToBack(true);
}
}).setNegativeButton("Hayır", null)
.show();
return true;
}
return super.onKeyDown(keyCode, event);
}
Umarım faydalı olmuştur,soru ve görüşlerinizi paylaşabilirsiniz, Cumhuriyet Bayramımız da şimdiden kutlu olsun :) görüşmek dileğiyle...
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK) {//geri tuşuna basılma durum kontrolü
AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setTitle("Uygulama Çıkış İzni")
.setMessage("Çıkış Yapmak İstiyor Musunuz?")
.setIcon(android.R.drawable.ic_dialog_alert)
.setPositiveButton("Evet",
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog,
int which) {
finish();//çıkış , activty sonlandır.
moveTaskToBack(true);
}
}).setNegativeButton("Hayır", null)
.show();
return true;
}
return super.onKeyDown(keyCode, event);
}
Umarım faydalı olmuştur,soru ve görüşlerinizi paylaşabilirsiniz, Cumhuriyet Bayramımız da şimdiden kutlu olsun :) görüşmek dileğiyle...
Android Programlama(4): Splash Ekranı Kullanımı
Selamlar, bu yazıda uygulamanızın splash ekranı için kullanacağınız kod bloğunu paylaşacağım. Uygulamanızın splash ekranınızın Activity onCreate metodunuzda aşağıdaki kod bloğunu kullanabilirsiniz;
int cnt = 5000;//bu değişkenimiz ile milisaniye olarak splash ekranımızın kaç milisaniye sonra sonlanacağını belirliyoruz
new Thread(new Runnable() {
@Override
public void run() {
if (!isFinishing()) // activity nin sonlanma durumu kontrolü
{
try {
Thread.sleep(cnt);// splash ekranının bekletilmesi
Intent i = new Intent(getBaseContext(),AcilisControl.class);//geçiş yapacağımız activity e yönlendiriyoruz.Burada AcilisControl activity sine yönlendirme yapılmıştır.
startActivity(i);
finish();//activity sonlandırıyoruz
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
}).start();
Diğer paylaşımlarda görüşmek üzere...
int cnt = 5000;//bu değişkenimiz ile milisaniye olarak splash ekranımızın kaç milisaniye sonra sonlanacağını belirliyoruz
new Thread(new Runnable() {
@Override
public void run() {
if (!isFinishing()) // activity nin sonlanma durumu kontrolü
{
try {
Thread.sleep(cnt);// splash ekranının bekletilmesi
Intent i = new Intent(getBaseContext(),AcilisControl.class);//geçiş yapacağımız activity e yönlendiriyoruz.Burada AcilisControl activity sine yönlendirme yapılmıştır.
startActivity(i);
finish();//activity sonlandırıyoruz
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
}).start();
Diğer paylaşımlarda görüşmek üzere...
Android Programlama(3): Ringer Mode Erişim ve Uygulama Ortam Sesi Değiştirme
Merhabalar, bu yazıda cihazın ringer mode erişimini sağlayacak kod bölümleri anlatılacaktır. Ringer mode ; cihazımızın sessiz, titreşimde vb. seçili durumda olan zil sesi durumlarının karşılığıdır.
AudioManager audioManager = (AudioManager) getSystemService(Context.AUDIO_SERVICE);
if (audioManager.getRingerMode() == AudioManager.RINGER_MODE_SILENT)
{
//cihazın sessiz modda olması durumunda yapılması gereken işlemler
}
else if (audioManager.getRingerMode() == AudioManager.RINGER_MODE_VIBRATE)
{
//cihazın titreşim modda olması durumunda yapılması gereken işlemler
}
Üstteki kod bloğu ile; audioManager değişkenimiz bir AudioManager sınıfından türemiştir, AudioManager sınıfının getRingerMode() fonksiyonu ile cihazın o anki ringer moduna erişim sağlanmakta ve bu modu istediğimiz şekilde zil sesi modlarının kontrolünde kullanabilmekteyiz. Bu kod bloğunda RINGER_MODE_SILENT (sessiz) ve RINGER_MODE_VIBRATE (titreşim) modlarının kontrolleri gerçekleştirilmiştir. Diğer mod detaylarını AudioManager sınıfının incelenmesiyle öğrenebilirsiniz.
AudioManager audioManager;
int sesDeger = 0;// (0-15)
audioManager.setStreamVolume(AudioManager.STREAM_MUSIC,sesDeger , 0);
Bu kod bloğumuzda ise cihazda uygulamamız çalıştığı andaki ortam sesinin değiştirilebilmesini sağlamaktadır. Burada kullandığımız sesDeger isimli değişkenimiz ile 0-15 arası değerler verilerek ortam sesi ayarlanabilmektedir.
Umarım faydalı bir paylaşım olmuştur, görüşmek ümidiyle...
AudioManager audioManager = (AudioManager) getSystemService(Context.AUDIO_SERVICE);
if (audioManager.getRingerMode() == AudioManager.RINGER_MODE_SILENT)
{
//cihazın sessiz modda olması durumunda yapılması gereken işlemler
}
else if (audioManager.getRingerMode() == AudioManager.RINGER_MODE_VIBRATE)
{
//cihazın titreşim modda olması durumunda yapılması gereken işlemler
}
Üstteki kod bloğu ile; audioManager değişkenimiz bir AudioManager sınıfından türemiştir, AudioManager sınıfının getRingerMode() fonksiyonu ile cihazın o anki ringer moduna erişim sağlanmakta ve bu modu istediğimiz şekilde zil sesi modlarının kontrolünde kullanabilmekteyiz. Bu kod bloğunda RINGER_MODE_SILENT (sessiz) ve RINGER_MODE_VIBRATE (titreşim) modlarının kontrolleri gerçekleştirilmiştir. Diğer mod detaylarını AudioManager sınıfının incelenmesiyle öğrenebilirsiniz.
AudioManager audioManager;
int sesDeger = 0;// (0-15)
audioManager.setStreamVolume(AudioManager.STREAM_MUSIC,sesDeger , 0);
Bu kod bloğumuzda ise cihazda uygulamamız çalıştığı andaki ortam sesinin değiştirilebilmesini sağlamaktadır. Burada kullandığımız sesDeger isimli değişkenimiz ile 0-15 arası değerler verilerek ortam sesi ayarlanabilmektedir.
Umarım faydalı bir paylaşım olmuştur, görüşmek ümidiyle...
Kaydol:
Kayıtlar (Atom)