Comment récupérer une valeur dans la base de données et l'afficher dans une vue du texte dans android
Je suis très désolé de poser cette simple doute.Im juste commencé à android et maintenant l'étude de la base de données des articles dans android.
J'ai créé une base de données avec le nom "livres", et avec un nom de table "titres".
Puis-je faire glisser et déposer les données dans la base de l'actif dans le projet.
Maintenant, je veux aller chercher une valeur dans la base de données(une valeur allant de cinq colonnes) et de les afficher dans l'affichage de texte.Quelqu'un peut m'aider comment faire cela.
Ci-dessous le code que j'ai utilisé pour lire la base de données.
import android.content.ContentValues;
import android.content.Context;
import android.database.Cursor;
import android.database.SQLException;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;
import android.util.Log;
public class DBAdapter {
public static final String KEY_ROWID = "_id";
public static final String KEY_ISBN = "isbn";
public static final String KEY_TITLE = "title";
public static final String KEY_PUBLISHER = "publisher";
private static final String TAG = "DBAdapter";
private static final String DATABASE_NAME = "books";
private static final String DATABASE_TABLE = "titles";
private static final int DATABASE_VERSION = 1;
private static final String DATABASE_CREATE =
"create table titles (_id integer primary key autoincrement, "
+ "isbn text not null, title text not null, "
+ "publisher text not null);";
private final Context context;
private DatabaseHelper DBHelper;
private SQLiteDatabase db;
public DBAdapter(Context ctx)
{
this.context = ctx;
DBHelper = new DatabaseHelper(context);
}
private static class DatabaseHelper extends SQLiteOpenHelper
{
DatabaseHelper(Context context)
{
super(context, DATABASE_NAME, null, DATABASE_VERSION);
}
@Override
public void onCreate(SQLiteDatabase db)
{
db.execSQL(DATABASE_CREATE);
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion,
int newVersion)
{
Log.w(TAG, "Upgrading database from version " + oldVersion
+ " to "
+ newVersion + ", which will destroy all old data");
db.execSQL("DROP TABLE IF EXISTS titles");
onCreate(db);
}
}
//---opens the database---
public DBAdapter open() throws SQLException
{
db = DBHelper.getWritableDatabase();
return this;
}
//---closes the database---
public void close()
{
DBHelper.close();
}
//---insert a title into the database---
public long insertTitle(String isbn, String title, String publisher)
{
ContentValues initialValues = new ContentValues();
initialValues.put(KEY_ISBN, isbn);
initialValues.put(KEY_TITLE, title);
initialValues.put(KEY_PUBLISHER, publisher);
return db.insert(DATABASE_TABLE, null, initialValues);
}
//---deletes a particular title---
public boolean deleteTitle(long rowId)
{
return db.delete(DATABASE_TABLE, KEY_ROWID +
"=" + rowId, null) > 0;
}
//---retrieves all the titles---
public Cursor getAllTitles()
{
return db.query(DATABASE_TABLE, new String[] {
KEY_ROWID,
KEY_ISBN,
KEY_TITLE,
KEY_PUBLISHER},
null,
null,
null,
null,
null);
}
//---retrieves a particular title---
public Cursor getTitle(long rowId) throws SQLException
{
Cursor mCursor =
db.query(true, DATABASE_TABLE, new String[] {
KEY_ROWID,
KEY_ISBN,
KEY_TITLE,
KEY_PUBLISHER
},
KEY_ROWID + "=" + rowId,
null,
null,
null,
null,
null);
if (mCursor != null) {
mCursor.moveToFirst();
}
return mCursor;
}
//---updates a title---
public boolean updateTitle(long rowId, String isbn,
String title, String publisher)
{
ContentValues args = new ContentValues();
args.put(KEY_ISBN, isbn);
args.put(KEY_TITLE, title);
args.put(KEY_PUBLISHER, publisher);
return db.update(DATABASE_TABLE, args,
KEY_ROWID + "=" + rowId, null) > 0;
}
}
Main.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/hello" />
</LinearLayout>
DatabaseActivity.java
import android.app.Activity;
import android.os.Bundle;
public class DatabaseActivity extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
}
}
En espérant pour votre aide.Merci à l'avance.
OriginalL'auteur suji | 2012-02-27
Vous devez vous connecter pour publier un commentaire.
Créer une classe et l'étend avec contentProvider et de l'utiliser comme ceci
et aussi de créer une classe au sein de XyzDB comme ce
et de mettre ensuite en suivant la méthode
Vous devez récupérer des données à partir du curseur dans la base de données de la classe helper. Vous devez créer méthode comme ceci et le retour du curseur de valeur.
et de créer une Base de données de la classe helper objet dans votre activité et de l'appel de cette méthode et extraire des données à partir du curseur comme ce
et id de jeu ou de toute valeur dans l'affichage de texte.
et suivez ce lien
http://www.vogella.de/articles/AndroidSQLite/article.html
Pouvez-vous s'il vous plaît aidez moi, comment faire pour supprimer ce
voir édité réponse.
OriginalL'auteur Newts
Je vais donner u un exemple avec l'aide d'u peut facilement comprendre comment pouvons-nous montrer les données de la base de données sur un textview.
Ci-dessous le code de la testdata est le nom de la base de données qui ont de l'utilisateur tableau à 2 colonnes sont présents. - je afficher les données de ces 2 colonnes sur 2 diff. textviews.
vous pouvez facilement accéder aux données de cette
OriginalL'auteur Naresh Sharma