ANDROİD SQLİTE DATABASE KULLANIMI (SELECT-INSERT-DELETE-UPDATE) :MobileCoder I MobileCoder.NET I Mobil Programlama I Android Programlama I Mobil Geliştiricilerin Buluşma Noktası I www.MobileCoder.Net

ANDROİD SQLİTE DATABASE KULLANIMI (SELECT-INSERT-DELETE-UPDATE)

06.04.2015 tarihinde Android Programlama kategorisine eklenmiş, 2.090 views Kişi Okumuş ve 0 Yorum Yapılmış.

 

ANDROİD SQLİTE DATABASE KULLANIMI (SELECT-INSERT-DELETE-UPDATE)

Yeliz ELMACI , Özlem AKYOL

Merhaba arkadaşlar sizlere SQLite veritabanı kullanımını anlatacağız. Yaptığımız veya yapacağımız uygulamalarda bazı verileri saklamak istediğimizde ve sakladığımız verilere gerektiğinde ulaşabilmek için veritabanı kullanırız.Bu yüzdende size kullanımı oldukça kolay olan SQLite veritabanını anlatacağız. SQLite dünyada en çok dağıtılan açık kaynak kodlu C ve C++ ile geliştirilmiş ,sunucu yazılımı ve yapılandırma gereksinimi olmayan bir veri tabanı motorudur. Bu oldukça hafif ve hızlı bir database motoru olduğundan mobil cihazlarda kullanıma uygundur. SQLite veritabanındaki komutlar Sql komutlarıyla benzerdir. SQLite birçok programlama dili içerisinde rahatlıkla kullanılabilir.( BASICCDC++Common LispJavaC#,Visual BasicDelphi,ASP)

Android SDK ile database kullanımı için öncelikle SQLiteOpenHelper sınıfını extend eden bir sınıf oluşturmamız gerekiyor. Bu yeni sınıfımızın yapıcısında mutlaka üst sınıfın yapıcı metodunu çağırmamız gerekiyor. Bu sırada database ismi ve versiyonunu vermemiz gerekecek.

 

import android.content.Context;

import android.database.sqlite.SQLiteDatabase;

import android.database.sqlite.SQLiteOpenHelper;

 

public class Veritabani extends SQLiteOpenHelper { // Veritabani yazısının üzerine gelip Add unimplemented methos yazının üzerine tıklayarak onCreate ve onUpgrade metotlarını oluşturuyoruz.

 

private static final String VERITABANI = “urunler”;

private static final int SURUM = 1;

public Veritabani(Context cont){

super (cont,VERITABANI,null,SURUM);

// Veritabanının ismini ve sürümünü tuttuğumuz context fonksiyonunu tanımlıyoruz.

}

@Override

public void onCreate(SQLiteDatabase db) {

// TODO Auto-generated method stub

db.execSQL(“CREATE TABLE urun(id INTEGER PRIMARY KEY AUTO INCREMENT,urun_ad TEXT,marka TEXT);”);

}

@Override

public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion)

{

// TODO Auto-generated method stub

db.execSQL(“DROP TABLE IF EXIST urun”);

onCreate(db);

}

}

Yukarıda override etmemiz gereken 2 metod oldu. Bunlar onCreate ve onUpgrade metodları. Eğer belirttiğimiz isimde bir database daha önce oluşturulmamış ise bu database’in şema yapısını eklememiz gerekecektir. Bu işlemi onCreate metodunda gerçekleştiriyoruz.Eğer daha önce yaratılmış bir database varsa ancak versiyonu bizim elimizdekinden düşük ise onUpgrade metodu çalıştırılır.

 

Veri Silme(Delete), Güncelleme(Update), Ekleme(Insert)  ve Veri  Görüntüleme

 ekran

public class veriekle extends Activity {

private Veritabani urunler;

 

@Override

protected void onCreate(Bundle savedInstanceState) {

// TODO Auto-generated method stub

super.onCreate(savedInstanceState);

setContentView(R.layout.veriekle);

urunler = new Veritabani(this);

final EditText urun_adi=(EditText) findViewById(R.id.editText1);

final EditText markasi=(EditText) findViewById(R.id.editText2);

final Button verigonder = (Button) findViewById(R.id.verigonder);

final Button verisil = (Button) findViewById(R.id.verisil);

final Button veriguncelle = (Button) findViewById(R.id.veriguncelle);

 

verisil.setOnClickListener(new View.OnClickListener() {

 

@Override

public void onClick(View v)

{

silme(ad.getText().toString());

}

});

public void deleteUrunler(String Urunler) {

 

SQLiteDatabase db = urunler.getWritableDatabase();

 

db.delete(urun, id + ” = ?”,new String[] { id });

// İlk parametre tablo adı, 2.parametrede WHERE sorgusu denilebilir. Son parametre de soru işareti yerine gelecek olan değer.

}

}

 

veriguncelle.setOnClickListener(new View.OnClickListener() {

@Override

public void onClick(View v)

{

Guncelle(ad.getText().toString());

}

});

 

public void updateUrunler(String UrunAdi) {

SQLiteDatabase db = urunler.getWritableDatabase();

 

ContentValues veriler = new ContentValues();

veriler.put(urun_adi,UrunAdi());

veriler.put(markasi, Markasi());

 

db.update(urun, veriler, id + ” = ?”, new String[] { UrunAdi });

}

verigonder.setOnClickListener(new View.OnClickListener() {

 

public void onClick(View v) {

try{

KayitEkle(urun_adi.getText().toString(),markasi.getText()

.toString());

Cursor cursor = KayitGetir();  // Cursor windowsda kullanılan imleç ile aynı

anlamdadır. Veritabanındaki veriler arasında hareketi sağlar.

KayitGoster(cursor);

}

finally{

urunler.close();

}

 

}

});

 

}

private void KayitEkle(String urun_ad, String marka){

 

SQLiteDatabase db = urunler.getWritableDatabase();

ContentValues veriler = new ContentValues();

veriler.put(“urun_ad”, urun_ad);

veriler.put(“marka”,marka);

 

db.insertOrThrow(urun, null, veriler); // insertOrThow : Eğer veriyi ekleyebiliyorsa ekler

ekleyemiyorsa hiçbir şey yapmaz.

}

 

private String[] SELECT = {“id”, “urun_ad”, “marka”};

private Cursor KayitGetir(){

SQLiteDatabase db = urunler.getReadableDatabase();

 

Cursor cursor = db.query(“urunad”, SELECT, null,

null, null, null, null);

// Belirli filitreleme yapılacaksa null yazılan yerlere değerler girilir. Biz öyle yapmayacağımız için null tanımladık.

startManagingCursor(cursor);

return cursor;

}

}

private void KayitGoster(Cursor cursor){

StringBuilder builder = new StringBuilder(“Kayitlar:n”);

while(cursor.moveToNext()) //While döngüsü true olarak dönmesi cursorun veriler üzerinde

ilerlediğini hala bir verinin olduğunu  gösterir.

 

{

 

long id = cursor.getLong(cursor.getColumnIndex(“id”));

String urun = cursor.getString((cursor.getColumnIndex(“urun_ad”)));

String markası = cursor.getString((cursor.getColumnIndex(“marka”)));

builder.append(id).append(” UrunAdı: “);

builder.append(urun).append(” Markası: “);

builder.append(markası).append(“n”);

}

TextView text = (TextView)findViewById(R.id.textView1);

text.setText(builder);

// Builder daki bütün stringleri  TextView e aktarıyorum. Böylece veriler ekranda görüntülenmiş olacak.

 

}

 

}

 

 

 

Kaynaklar

http://hocahanim.tv ( Erişim Tarihi:06.03.2015 )

http://www.mobilhanem.com ( Erişim Tarihi:06.03.2015 )

http://www.programlamadefteri.com ( Erişim Tarihi:17.03.2015)

http://www.mehmetkirazli.com ( Erişim Tarihi:17.03.2015 )

 

HAZIRLAYANLAR:

Yeliz ELMACI

Özlem AKYOL

İlgili Terimler : , , , , , ,
Yazar Hakkında

Yazar : ceren kozhan

Yazar Hakkında :

Yazarın Tüm Yazıları İçin Tıklayınız

Yorumlar

Sitemizde En Çok Okunan İçerikler

ANDROİD TELEFONLARA ROOT ATMA
ANDROİD TELEFONLARA ROOT ATMARoot Ne demek ? Bir android cihazı root etmek telefonun
fragment
ANDROİD FRAGMENT YAPISI VE KULLANIMIFragmentler Activity içerisinde yer alan kullanıcı ara yüzleridir. Fragment
ANDROİD TELEFONLARDA KONFERANS GÖRÜŞME
ANDROİD TELEFONLARDA KONFERANS GÖRÜŞMEANDROİD TELEFONLARDA KONFERANS GÖRÜŞME   Konferans görüşme çok fazla bilinmeyen androidin
Asp.NET’de web servis hazırlama ve Android de kullanimi  Web Servis Nedir ? Web üzerinden HTTP protokolü ile hizmet

Sitemizde En Çok Yorumlanan İçerikler

Rating Bar Kullanımı
Rating Bar KullanımıAndroid’de yıldız şeklinde derecelendirme çubuğu olarak kullanılır. Kullanıcı sürükleme
Android Wear Emülatör Kurulumu
Android Wear Emülatör Kurulumu   Android studio da geliştireceğimiz uygulamaların kontrolunü yapmak için emülatör
Resim Galerisi Oluşturma
Resim Galerisi OluşturmaAndroid Programlama – Resim Galerisi Oluşturma Bu yazıda, bir galeri
SQLite Database Browser Kullanımı
SQLite Database Browser KullanımıSQLite Database Browser Kullanımı Merhaba arkadaşlar, Android uygulamaları geliştirirken uygulama üzerindeki

Son Yapılan Yorumlar

  • Kategoriler

  • Son Yazılar

  • Takvim

    Kasım 2017
    P S Ç P C C P
    « Kas    
     12345
    6789101112
    13141516171819
    20212223242526
    27282930  
  • Etiketler

  • Son Yorumlar

    • Arşivler

    • Meta