Come inserire il valore nella base di dati utilizzando sqlite in android?

Puoi indicarmi come inserire il valore nel database. Ho appena iniziato lo sviluppo in android non hanno molta esperienza.

Ho appena creato una information class in cui creo getter e setter del field di nome. pacchetto com.example.database_example;

  • Come creare lo stile con stile Android con la pagina che scorra la vista
  • Android: Creazione di un TextView circolare?
  • adb non viene riconosciuto come command interno o esterno sulle windows
  • Viewpager con diversi menu e barra degli strumenti comune non funziona
  • Integrare lo scanner QR Code ZXing senza installare BarCode Scanner
  • errore di risorsa in studio android dopo l'aggiornamento: nessuna risorsa trovato
  •  package com.example.database_example; public class Information { String name; public Information(String name) { // TODO Auto-generated constructor stub this.name=name; } public String getName() { return name; } public void setName(String name) { this.name = name; } } 

    Ora creo un'altra class di database in cui voglio aggiungere il metodo di inserimento e leggere i dati dalla base di dati.

     package com.example.database_example; import android.content.ContentValues; import android.content.Context; import android.database.sqlite.SQLiteDatabase; import android.database.sqlite.SQLiteDatabase.CursorFactory; import android.database.sqlite.SQLiteOpenHelper; public class DataBaseExample extends SQLiteOpenHelper{ private static final int DATABASE_VERSION = 1; // Database Name private static final String DATABASE_NAME = "information"; // Contacts table name private static final String TABLE_Name= "Name"; // Contacts Table Columns names private static final String KEY_ID = "id"; private static final String KEY_NAME = "name"; public DataBaseExample(Context context) { super(context, DATABASE_NAME, null, DATABASE_VERSION); // TODO Auto-generated constructor stub } @Override public void onCreate(SQLiteDatabase db) { // TODO Auto-generated method stub String createTable= "CREATE TABLE " + TABLE_Name+"(" + KEY_ID + " INTEGER PRIMARY KEY AUTOINCREMENT," + KEY_NAME + " TEXT," + ")"; db.execSQL(createTable); } @Override public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { // TODO Auto-generated method stub db.execSQL("DROP TABLE IF EXISTS " + TABLE_Name); // Create tables again onCreate(db); } public boolean insertname(Information information) { boolean createSuccessful = false; ContentValues values = new ContentValues(); // values.put(KEY_ID, information.getId()); values.put(KEY_NAME, information.getName()); SQLiteDatabase db = this.getWritableDatabase(); createSuccessful = db.insert(TABLE_Name, null, values) > 0; db.close(); return createSuccessful; } } 

    Main File

     package com.example.database_example; import android.os.Bundle; import android.app.Activity; import android.view.Menu; public class MainActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); Information inf=new Information("naveen"); DataBaseExample dbx=new DataBaseExample(MainActivity.this); dbx.insertname(inf); } 

    LogCat

     09-24 07:25:07.138: I/Database(392): sqlite returned: error code = 1, msg = near ")": syntax error 09-24 07:25:07.138: E/Database(392): Failure 1 (near ")": syntax error) on 0x2a7080 when preparing 'CREATE TABLE Name(id INTEGER PRIMARY KEY AUTOINCREMENT,name TEXT,)'. 09-24 07:25:07.148: D/AndroidRuntime(392): Shutting down VM 09-24 07:25:07.148: W/dalvikvm(392): threadid=1: thread exiting with uncaught exception (group=0x40015560) 09-24 07:25:07.158: E/AndroidRuntime(392): FATAL EXCEPTION: main 09-24 07:25:07.158: E/AndroidRuntime(392): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.database_example/com.example.database_example.MainActivity}: android.database.sqlite.SQLiteException: near ")": syntax error: CREATE TABLE Name(id INTEGER PRIMARY KEY AUTOINCREMENT,name TEXT,) 09-24 07:25:07.158: E/AndroidRuntime(392): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1647) 09-24 07:25:07.158: E/AndroidRuntime(392): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1663) 09-24 07:25:07.158: E/AndroidRuntime(392): at android.app.ActivityThread.access$1500(ActivityThread.java:117) 09-24 07:25:07.158: E/AndroidRuntime(392): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:931) 09-24 07:25:07.158: E/AndroidRuntime(392): at android.os.Handler.dispatchMessage(Handler.java:99) 09-24 07:25:07.158: E/AndroidRuntime(392): at android.os.Looper.loop(Looper.java:123) 09-24 07:25:07.158: E/AndroidRuntime(392): at android.app.ActivityThread.main(ActivityThread.java:3683) 09-24 07:25:07.158: E/AndroidRuntime(392): at java.lang.reflect.Method.invokeNative(Native Method) 09-24 07:25:07.158: E/AndroidRuntime(392): at java.lang.reflect.Method.invoke(Method.java:507) 09-24 07:25:07.158: E/AndroidRuntime(392): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839) 09-24 07:25:07.158: E/AndroidRuntime(392): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597) 09-24 07:25:07.158: E/AndroidRuntime(392): at dalvik.system.NativeStart.main(Native Method) 09-24 07:25:07.158: E/AndroidRuntime(392): Caused by: android.database.sqlite.SQLiteException: near ")": syntax error: CREATE TABLE Name(id INTEGER PRIMARY KEY AUTOINCREMENT,name TEXT,) 09-24 07:25:07.158: E/AndroidRuntime(392): at android.database.sqlite.SQLiteDatabase.native_execSQL(Native Method) 09-24 07:25:07.158: E/AndroidRuntime(392): at android.database.sqlite.SQLiteDatabase.execSQL(SQLiteDatabase.java:1763) 09-24 07:25:07.158: E/AndroidRuntime(392): at com.example.database_example.DataBaseExample.onCreate(DataBaseExample.java:34) 09-24 07:25:07.158: E/AndroidRuntime(392): at android.database.sqlite.SQLiteOpenHelper.getWritableDatabase(SQLiteOpenHelper.java:126) 09-24 07:25:07.158: E/AndroidRuntime(392): at com.example.database_example.DataBaseExample.insertname(DataBaseExample.java:55) 09-24 07:25:07.158: E/AndroidRuntime(392): at com.example.database_example.MainActivity.onCreate(MainActivity.java:18) 09-24 07:25:07.158: E/AndroidRuntime(392): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047) 09-24 07:25:07.158: E/AndroidRuntime(392): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1611) 09-24 07:25:07.158: E/AndroidRuntime(392): ... 11 more** 

  • Come get la lingua (locale) attualmente visualizzata da Android?
  • Un modo corretto per convertire il byte in java a unsigned char * in C + +, e viceversa?
  • Imansible risolvere il metodo 'getSupportFragmentManager ()' all'interno del frammento
  • Le perdite di memory di Listview
  • Quando per salvare i dati nel database, onPause () o onStop ()?
  • Programmazione Android - disegno orologio analogico
  • 4 Solutions collect form web for “Come inserire il valore nella base di dati utilizzando sqlite in android?”

    Il tuo metodo di inserimento sqlite android potrebbe essere simile a questo:

     public boolean create(Information information) { boolean createSuccessful = false; ContentValues values = new ContentValues(); values.put(KEY_NAME, information.getName()); SQLiteDatabase db = this.getWritableDatabase(); createSuccessful = db.insert(tableName, null, values) > 0; db.close(); return createSuccessful; } 

    Può essere aggiunto nella class DataBaseExample .

    Puoi utilizzarla in questo modo nella tua attività o dovunque sia ansible.

     Information information = new Information(); information.setName("naveen"); if(new DataBaseExample().create(information)){ Log.v(TAG, "save ok."); }else{ Log.v(TAG, "save failed."); } 

    Vedere qui per esempi più semplici.

     SQLiteDatabase db = this.getWritableDatabase(); ContentValues values = new ContentValues(); values.put("Messsage", msg); values.put("Name", SenderName); values.put("GroupName", Groupname); db.insert("TableName", null, values); 

    Per maggiori dettagli clicca qui http://androiddhina.blogspot.in/2015/04/insert-value-in-database-using-sqlite.html

    Il primo errore è dovuto alla virgola extra che hai inserito nella string createTable dopo l'ultima definizione di colonna KEY_NAME+" TEXT,"

     String createTable= "CREATE TABLE " + TABLE_Name+"(" + KEY_ID + " INTEGER PRIMARY KEY AUTOINCREMENT," + KEY_NAME + " TEXT," + ")"; 

    la forma corretta è la seguente:

     String createTable= "CREATE TABLE " + TABLE_Name+"(" + KEY_ID + " INTEGER PRIMARY KEY AUTOINCREMENT," + KEY_NAME + " TEXT" + ")"; 
     package com.example.hostelmangement; import java.util.ArrayList; import java.util.List; import org.apache.commons.logging.Log; import android.content.ContentValues; import android.content.Context; import android.database.Cursor; import android.database.sqlite.SQLiteDatabase; public class DataBase { DataBaseHelper database; int a=0; public DataBase(Context con) { database=new DataBaseHelper(con,"jojo", null,1); } void insertData(String joindate, String name, String fathername, String dateofbirth, String housename, String houseplace, String housepin, String blood, String mobile, String email, String company, String companyplace, String companyphone, String companypin, String rent, String imgphoto, String imgproof) { SQLiteDatabase sqld=database.getWritableDatabase(); ContentValues cv=new ContentValues(); cv.put("join_date", joindate); cv.put("name", name); cv.put("father_name", fathername); cv.put("date_of_birth", dateofbirth); cv.put("house_name", housename); cv.put("place", houseplace); cv.put("pin_no", housepin); cv.put("blood_group", blood); cv.put("mobile", mobile); cv.put("email", email); cv.put("company", company); cv.put("company_place", companyplace); cv.put("company_phone", companyphone); cv.put("company_pin", companypin); cv.put("rent", rent); cv.put("pending",a+""); cv.put("status", "a"); cv.put("photo",imgphoto); cv.put("proof",imgproof); sqld.insert("demo", null,cv); } public List<User> getDetails() { List<User> ar=new ArrayList<User>(); SQLiteDatabase sqldg=database.getReadableDatabase(); Cursor cur=sqldg.rawQuery("select * from demo where status='a' order by name asc" , null); if(cur!=null) { if(cur.moveToFirst()) { do { User user=new User(); user.setId(cur.getInt(0)); user.setJoindate(cur.getString(1)); user.setName(cur.getString(2)); user.setFathername(cur.getString(3)); user.setDateofbirth(cur.getString(4)); user.setHousename(cur.getString(5)); user.setPlace(cur.getString(6)); user.setPinno(cur.getString(7)); user.setBloodgroup(cur.getString(8)); user.setMobile(cur.getString(9)); user.setEmail(cur.getString(10)); user.setCompany(cur.getString(11)); user.setCompanyplace(cur.getString(12)); user.setCompanyphone(cur.getString(13)); user.setCompanypin(cur.getString(14)); user.setRent(cur.getString(15)); user.setPhoto(cur.getString(18)); user.setProof(cur.getString(19)); ar.add(user); } while(cur.moveToNext()); } } return ar; } public List<User> getDetailsforview(int memberid) { List<User> ar=new ArrayList<User>(); SQLiteDatabase sqldg=database.getReadableDatabase(); Cursor cur=sqldg.rawQuery("select * from demo where id="+memberid , null); if(cur!=null) { if(cur.moveToFirst()) { do { User user=new User(); user.setId(cur.getInt(0)); user.setJoindate(cur.getString(1)); user.setName(cur.getString(2)); user.setFathername(cur.getString(3)); user.setDateofbirth(cur.getString(4)); user.setHousename(cur.getString(5)); user.setPlace(cur.getString(6)); user.setPinno(cur.getString(7)); user.setBloodgroup(cur.getString(8)); user.setMobile(cur.getString(9)); user.setEmail(cur.getString(10)); user.setCompany(cur.getString(11)); user.setCompanyplace(cur.getString(12)); user.setCompanyphone(cur.getString(13)); user.setCompanypin(cur.getString(14)); user.setRent(cur.getString(15)); user.setPhoto(cur.getString(18)); user.setProof(cur.getString(19)); ar.add(user); } while(cur.moveToNext()); } } return ar; } public List<User> getDateSort() { List<User> ar=new ArrayList<User>(); SQLiteDatabase sqldg=database.getReadableDatabase(); //Cursor cur=sqldg.rawQuery("select * from demo order by join_date asc", null); Cursor cur=sqldg.rawQuery("select * from demo where status='a' order by name asc", null); if(cur!=null) { if(cur.moveToFirst()) { do { User user=new User(); user.setId(cur.getInt(0)); String date=cur.getString(1); String date1=date.substring(8, 10); user.setJoindate(date1); user.setName(cur.getString(2)); user.setFathername(cur.getString(3)); user.setDateofbirth(cur.getString(4)); user.setHousename(cur.getString(5)); user.setPlace(cur.getString(6)); user.setPinno(cur.getString(7)); user.setBloodgroup(cur.getString(8)); user.setMobile(cur.getString(9)); user.setEmail(cur.getString(10)); user.setCompany(cur.getString(11)); user.setCompanyplace(cur.getString(12)); user.setCompanyphone(cur.getString(13)); user.setCompanypin(cur.getString(14)); user.setRent(cur.getString(15)); user.setPending(cur.getInt(16)); user.setPhoto(cur.getString(18)); user.setProof(cur.getString(19)); ar.add(user); } while(cur.moveToNext()); } } return ar; } public List<User> deactiveMembers() { List<User> ar=new ArrayList<User>(); SQLiteDatabase sqldg=database.getReadableDatabase(); Cursor cur=sqldg.rawQuery("select * from demo where status='d' order by name asc", null); if(cur!=null) { if(cur.moveToFirst()) { do { User user=new User(); user.setId(cur.getInt(0)); user.setJoindate(cur.getString(1)); user.setName(cur.getString(2)); user.setFathername(cur.getString(3)); user.setDateofbirth(cur.getString(4)); user.setHousename(cur.getString(5)); user.setPlace(cur.getString(6)); user.setPinno(cur.getString(7)); user.setBloodgroup(cur.getString(8)); user.setMobile(cur.getString(9)); user.setEmail(cur.getString(10)); user.setCompany(cur.getString(11)); user.setCompanyplace(cur.getString(12)); user.setCompanyphone(cur.getString(13)); user.setCompanypin(cur.getString(14)); user.setRent(cur.getString(15)); user.setPhoto(cur.getString(18)); user.setProof(cur.getString(19)); ar.add(user); } while(cur.moveToNext()); } } return ar; } public void Update(String joindate, String name, String fathername, String dateofbirth, String housename, String houseplace, String housepin, String blood, String mobile, String email, String company, String companyplace, String companyphone, String companypin, String rent, int id, String imgphoto, String imgproof) { SQLiteDatabase sqld=database.getWritableDatabase(); ContentValues cv=new ContentValues(); cv.put("join_date", joindate); cv.put("name", name); cv.put("father_name", fathername); cv.put("date_of_birth", dateofbirth); cv.put("house_name", housename); cv.put("place", houseplace); cv.put("pin_no", housepin); cv.put("blood_group", blood); cv.put("mobile", mobile); cv.put("email", email); cv.put("company", company); cv.put("company_place", companyplace); cv.put("company_phone", companyphone); cv.put("company_pin", companypin); cv.put("rent", rent); cv.put("photo", imgphoto); cv.put("proof", imgproof); sqld.update("demo",cv,"id="+id, null); } public void pendinUpdate(int pending, int lastamount) { SQLiteDatabase sqld=database.getWritableDatabase(); ContentValues cv=new ContentValues(); cv.put("pending",lastamount); sqld.update("demo",cv,"id="+pending, null); } public void deleteUpdate(int id) { SQLiteDatabase sqld=database.getWritableDatabase(); ContentValues cv=new ContentValues(); cv.put("status","d"); sqld.update("demo",cv,"id="+id, null); } public void activate(int id) { SQLiteDatabase sqld=database.getWritableDatabase(); ContentValues cv=new ContentValues(); cv.put("status","a"); sqld.update("demo",cv,"id="+id, null); } 

    }

    L'Android è un fan Android di Google, tutto su telefoni Android, Android Wear, Android Dev e applicazioni Android Games e così via.