Thursday, 15 August 2013

java - Android: erro NullPointerException on getWritableDatabase() -


इस सवाल का पहले से ही एक उत्तर है: < / P>

  • 1 उत्तर

मेरे पास एक समस्या है NullPointerException पर GetWritableDatabase ()

डेटाबेस

मैं एक छोटा अनुप्रयोग बनाने की कोशिश कर रहा हूं जो कि कुछ जानकारी को SQLite तालिका में संग्रहीत करता है। लेकिन मैं हमेशा getWritableDatabase विधि में "Java.lang.NullPointerException" अपवाद प्राप्त करता हूं। क्या कोई मेरी मदद कर सकता है? सभी कोड नीचे हैं।

  सार्वजनिक वर्ग PacienteDatabase SQLiteOpenHelper विस्तारित {निजी स्थिर अंतिम स्ट्रिंग DB_NAME = "paciente.sqlite"; निजी स्थिर अंतिम पूर्ण संस्करण = 1; निजी स्थिर अंतिम स्ट्रिंग तालिका = "पाइन्च"; सार्वजनिक PacienteDatabase (संदर्भ संदर्भ) {सुपर (संदर्भ, DB_NAME, रिक्त, संस्करण); } @Override सार्वजनिक शून्य OnCreate (SQLiteDatabase डाटाबेस) {// Crear तबला paciente db.execSQL (+ "_ id पूर्णांक प्राथमिक कुंजी autoincrement, प्रारंभ_तिथि पूर्णांक)" "तालिका paciente (बनाने"); } @ ओवरराइड पब्लिक व्हॉयड ऑनअप अपग्रेड (SQLiteDatabase डीबी, इंट पुरानावर्सन, इंट न्यूवर्सियन) {}  

}

सक्रियण

< प्री> सार्वजनिक वर्ग रजिस्ट्रोप्राइन्नेने ActionBarActivity {निजी बटन mBotonOk; प्राइवेट पाइन्टाईडेटाबेस मापीनाइन्च; निजी संदर्भ सी; @ ओवरराइड संरक्षित शून्य को क्रिएट (बंडल सहेजा गया इन्स्टैंसस्टेट) {सुपर.नक्रेट (सहेजे गए इन्स्टेंसस्टेट); setContentView (R.layout.activity_registro_paciente); MPaciente = नया PacienteDatabase (c); MBotonOk = (बटन) ढूंढिए ViewById (R.id.boton_registro_ok); mBotonOk.setOnClickListener (नई View.OnClickListener () {@Override सार्वजनिक शून्य onClick (देखें v) {ContentValues ​​datos = नए ContentValues ​​(); datos.put ( "प्रारंभ_तिथि", 1000);। mPaciente.getWritableDatabase () सम्मिलित ( "paciente ", रिक्त, डेटास); समाप्त ();}}); }

लॉग बिल्ली में त्रुटि

  03-16 22: 22: 46.531 1181-1181 / com.example.franciscodelgadogarcia .projecto ई / AndroidRuntime: गंभीर अपवाद: मुख्य प्रक्रिया: com.example.franciscodelgadogarcia.projecto, पीआईडी: 1181 java.lang.NullPointerException android.database.sqlite.SQLiteOpenHelper.getDatabaseLocked (SQLiteOpenHelper.java:224) android.database पर पर। sqlite.SQLiteOpenHelper.getWritableDatabase (SQLiteOpenHelper.java:164) एंड्रॉयड पर com.example.franciscodelgadogarcia.projecto.RegistroPaciente $ 1.onClick (RegistroPaciente.java:84) android.view.View.performClick (View.java:4438) पर पर। android.os.Looper पर android.os.Handler.dispatchMessage (Handler.java:95) पर view.View $ PerformClick.run (View.java:18422) android.os.Handler.handleCallback (Handler.java:733) पर .loop (Looper.java:136) पर android.app.ActivityThread.main (ActivityThread.java) 017) java.lang.reflect.Method.invokeNati पर Com.android.internal.os.ZygoteInit $ Method औरArgsCaller.run पर (jygoteInit.java:779) com.android.internal पर java.lang.reflect.Method.invoke (Method.java लेख 15) पर ve (मूल विधि)। os.ZygoteInit.main (ZygoteInit.java:595) dalvik.system.NativeStart.main (मूल निवासी विधि) पर  

c से पास करने से पहले इसे प्रारंभ करें >

c context का null वस्तु का आरंभ करें PacienteDatabase वर्ग कन्स्ट्रक्टर:

  c = RegistroPaciente। इस mPaciente = new PacienteDatabase (c);  

No comments:

Post a Comment