teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

1

コードの追加

2017/04/07 02:13

投稿

edoooooo
edoooooo

スコア478

title CHANGED
File without changes
body CHANGED
@@ -1,7 +1,72 @@
1
1
  java.lang.NullPointerExceptionが SQLiteDatabase db=memoDBHelper.getWritableDatabase();に出るのですが、なぜなのでしょうか?
2
2
  アドバイスをいただけないでしょうか?
3
3
  どうぞよろしくお願いします。
4
+ MemoDBHelper
5
+ ```java
6
+ package com.example.android.sample.memo;
4
7
 
8
+ import android.content.Context;
9
+ import android.database.sqlite.SQLiteDatabase;
10
+ import android.database.sqlite.SQLiteOpenHelper;
11
+
12
+ /**
13
+ * Created by endoutaichi on 2017/04/06.
14
+ */
15
+
16
+ public class MemoDBHelper extends SQLiteOpenHelper {
17
+
18
+ public static final String DB_NAME="myapp.db";
19
+ public static final int DB_VERSION=1;
20
+ public static final String CREATE_TABLE=
21
+ "create table " + UserContract.Users.TABLE_NAME + "(" +
22
+ UserContract.Users._ID+ " integer primary key autoincrement, " +
23
+ UserContract.Users.COL_TITLE + " title," +
24
+ UserContract.Users.COL_CONTENT + " content, +" +
25
+ UserContract.Users.COL_DATA + "data" +
26
+ ")";
27
+
28
+
29
+
30
+ /**"create table"+ UserContract.Users.TABLE_NAME+"("+
31
+ UserContract.Users._ID+"integer primary key autoincrement,"+
32
+ UserContract.Users.COL_NAME+"text,"+
33
+ UserContract.Users.COL_SCORE+"integer)";
34
+ **/
35
+ public static final String INIT_TABLE=
36
+ "insert into users (title,content,data)values" +
37
+ "('仕事','出張','5月3日'),"+
38
+ "('遊び','海','8月4日'),"+
39
+ "('買い物','ららぽーと','3月3日')";
40
+
41
+ public static final String DROP_TABLE=
42
+ "drop table if exists users";
43
+
44
+ public MemoDBHelper(Context c){
45
+ super(c,DB_NAME,null,DB_VERSION);
46
+ }
47
+
48
+
49
+ @Override
50
+ public void onCreate(SQLiteDatabase sqLiteDatabase) {
51
+
52
+ //create table
53
+ sqLiteDatabase.execSQL(CREATE_TABLE);
54
+ //init table
55
+ sqLiteDatabase.execSQL(INIT_TABLE);
56
+
57
+ }
58
+
59
+ @Override
60
+ public void onUpgrade(SQLiteDatabase sqLiteDatabase, int i, int i1) {
61
+
62
+ //drop table
63
+ sqLiteDatabase.execSQL(DROP_TABLE);
64
+ //onCreate
65
+ onCreate(sqLiteDatabase);
66
+ }
67
+ }
68
+
69
+ ```
5
70
  MainActivity.java
6
71
  ```java
7
72
  public class MainActivity extends AppCompatActivity {
@@ -143,33 +208,4 @@
143
208
  at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2095)
144
209
  at android.app.ActivityThread.access$600(ActivityThread.java:137)
145
210
  at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1206)
146
- at android.os.Handler.dispatchMessage(Handler.java:99)
147
- at android.os.Looper.loop(Looper.java:213)
148
- at android.app.ActivityThread.main(ActivityThread.java:4786)
149
- at java.lang.reflect.Method.invokeNative(Native Method)
150
- at java.lang.reflect.Method.invoke(Method.java:511)
151
- at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:789)
152
- at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:556)
153
- at dalvik.system.NativeStart.main(Native Method)
154
- Caused by: java.lang.NullPointerException
155
- at android.content.ContextWrapper.openOrCreateDatabase(ContextWrapper.java:221)
156
- at android.database.sqlite.SQLiteOpenHelper.getDatabaseLocked(SQLiteOpenHelper.java:224)
157
- at android.database.sqlite.SQLiteOpenHelper.getWritableDatabase(SQLiteOpenHelper.java:164)
158
- at com.example.android.sample.memo.MainActivity.<init>(MainActivity.java:51)
159
- at java.lang.Class.newInstanceImpl(Native Method)
160
- at java.lang.Class.newInstance(Class.java:1319)
161
- at android.app.Instrumentation.newActivity(Instrumentation.java:1053)
162
- at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1985)
163
- at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2095) 
164
- at android.app.ActivityThread.access$600(ActivityThread.java:137) 
165
- at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1206) 
166
- at android.os.Handler.dispatchMessage(Handler.java:99) 
167
- at android.os.Looper.loop(Looper.java:213) 
168
- at android.app.ActivityThread.main(ActivityThread.java:4786) 
169
- at java.lang.reflect.Method.invokeNative(Native Method) 
170
- at java.lang.reflect.Method.invoke(Method.java:511) 
171
- at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:789) 
172
- at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:556) 
173
- at dalvik.system.NativeStart.main(Native Method) 
174
-
175
211
  ```