database'den veri çekme (SQLite veritabanı)
DATABASEHELPER.JAVA KODLAMASI
[code]
public class DatabaseHandler extends SQLiteOpenHelper {
private static final int DATABASE_VERSION = 1;
private static final String DATABASE_NAME = "turku.sqlite";
private static final String DATABASE_TABLE = "turkuinfo";
private static final String KEY_ID = "id";
private static final String KEY_BASLIK = "baslik";
private static final String KEY_ICERIK = "icerik";
public DatabaseHandler(Context context) {
super(context, DATABASE_NAME, null, DATABASE_VERSION);
}
@Override
public void onCreate(SQLiteDatabase db) {
String CREATE_TURKU_TABLE = "CREATE TABLE " + DATABASE_TABLE + "("
+ KEY_ID + " INTEGER PRIMARY KEY," + KEY_BASLIK + " TEXT,"
+ KEY_ICERIK + ")";
db.execSQL(CREATE_TURKU_TABLE);
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
db.execSQL("DROP TABLE IF EXIST " + DATABASE_TABLE);
}
public void addUserInfo(Turku info) {
SQLiteDatabase db = this.getWritableDatabase();
ContentValues values = new ContentValues();
values.put(KEY_BASLIK, info.getBaslik());
values.put(KEY_ICERIK, info.getIcerik());
db.insert(DATABASE_TABLE, null, values);
db.close();
}
public Turku getUserInfo(int id) {
SQLiteDatabase db = this.getReadableDatabase();
Cursor cursor = db.query(DATABASE_TABLE, new String[] { KEY_ID,
KEY_BASLIK, KEY_ICERIK }, KEY_ID + "=?",
new String[] { String.valueOf(id) }, null, null, null, null);
if (cursor != null)
cursor.moveToFirst();
Turku info = new Turku(cursor.getInt(0), cursor.getString(1),
cursor.getString(2));
return info; }
}
[/code]
DİĞER KODLAMA
[code]
public class Bildirimler extends Fragment implements OnClickListener {
TextView bildirim, icerik;
Button icerikGetir;
private Veritabani db;
private DatabaseHandler handler;
private Turku turku;
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.bildirimler_fragment, container,
false);
bildirim = (TextView) view.findViewById(R.id.tvBildirim);
icerik = (TextView) view.findViewById(R.id.tvIcerik);
icerikGetir = (Button) view.findViewById(R.id.bIcerikGetir);
icerikGetir.setOnClickListener(this);
return view;
}
@Override
public void onClick(View v) {
if (v.getId() == R.id.bIcerikGetir) {
handler = new DatabaseHandler(getActivity());
turku = new Turku(1, "Başlık", "Bu bir denemedir.");
handler.addUserInfo(turku);
Log.d("TAG", handler.getUserInfo(1).getBaslik());
icerik.setText(handler.getUserInfo(1).getIcerik());
}
}
}
[/code]
burada veri tabanım oluşuyor. butona her tıkladığımda ise "Bu bir denemedir." isimli veri ekleniyor. ben bu veriyi eklemek istemiyorum. Hazır veri tabanımı oluşturup bu oluşturduğum veri tabanımın sadece belirli id ye sahip sütun içeriğini ekrana yazdırmak istiyorum. Bu içerikler genelde türkü sözü şiir gibi veriler olacak ya da uzun pararaflar.
Nasıl yapabilirim?