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

質問編集履歴

1

コード修正

2018/02/06 07:57

投稿

sena14
sena14

スコア109

title CHANGED
File without changes
body CHANGED
@@ -46,7 +46,7 @@
46
46
  super(context, DB_NAME, null, DB_VERSION);
47
47
  }
48
48
 
49
- public static final String DB_NAME = "Data.db";
49
+ public static final String DB_NAME = "Money.db";
50
50
  public static final int DB_VERSION = 1;
51
51
 
52
52
  public static final String CREATE_TABLE =
@@ -58,12 +58,23 @@
58
58
  SQLContract.Money.MONTH + " integer,"+
59
59
  SQLContract.Money.DATE + " integer)";
60
60
 
61
+
62
+ public static final String INIT_TABLE =
63
+ "insert into " + SQLContract.Item.TABLE_NAME + "(" +
64
+ SQLContract.Money.ITEM + "," +
65
+ SQLContract.Money.MONEY + ","+
66
+ SQLContract.Money.YEAR + ","+
67
+ SQLContract.Money.MONTH + ","+
68
+ SQLContract.Money.DATE + ") values " +
69
+ "('item1',10,2018,2,1)";
70
+
61
71
  public static final String DROP_TABLE =
62
72
  "drop table if exists " + SQLContract.Money.TABLE_NAME;
63
73
 
64
74
  @Override
65
75
  public void onCreate(SQLiteDatabase db) {
66
76
  db.execSQL(CREATE_TABLE);
77
+ db.execSQL(INIT_TABLE);
67
78
  }
68
79
 
69
80
  @Override
@@ -83,23 +94,20 @@
83
94
  import android.database.sqlite.SQLiteDatabase;
84
95
 
85
96
  public class SQLMoney {
86
- SQLMoneyOpenHelper openHelper;
87
- SQLItemOpenHelper itemOpenHelper;
88
- SQLiteDatabase database;
89
- SQLiteDatabase itemDatabase;
90
97
 
98
+ Context context;
99
+
91
- public SQLMoney (Context context) {
100
+ public SQLMoney(Context context) {
92
- openHelper = new SQLMoneyOpenHelper(context);
93
- itemOpenHelper = new SQLItemOpenHelper(context);
101
+ this.context = context;
94
- database = openHelper.getWritableDatabase();
95
- itemDatabase = itemOpenHelper.getReadableDatabase();
96
102
  }
97
103
 
98
104
  //指定項目の金額を取得
99
105
  public int getMoney(int year, int month, int date, int number) {
106
+ SQLMoneyOpenHelper openHelper = new SQLMoneyOpenHelper(context);
107
+ SQLiteDatabase database = openHelper.getWritableDatabase();
100
108
  String item = searchItem(number);
101
109
 
102
- Cursor cursor = null;
110
+ Cursor cursor;
103
111
  cursor = database.query(
104
112
  SQLContract.Money.TABLE_NAME,
105
113
  null,
@@ -122,9 +130,10 @@
122
130
 
123
131
  //指定項目の金額を上書き
124
132
  public void saveMoney(int year, int month, int date, int number, int money) {
133
+ SQLMoneyOpenHelper openHelper = new SQLMoneyOpenHelper(context);
134
+ SQLiteDatabase database = openHelper.getWritableDatabase();
125
135
  String item = searchItem(number);
126
136
 
127
- Cursor cursor = null;
128
137
  ContentValues newMoney = new ContentValues();
129
138
  newMoney.put(SQLContract.Money.MONEY, money);
130
139
  long newId = database.update(
@@ -138,7 +147,9 @@
138
147
  }
139
148
 
140
149
  public String searchItem(int number) {
150
+ SQLItemOpenHelper itemOpenHelper = new SQLItemOpenHelper(context);
151
+ SQLiteDatabase itemDatabase = itemOpenHelper.getReadableDatabase();
141
- Cursor cursor = null;
152
+ Cursor cursor;
142
153
  cursor = itemDatabase.query(
143
154
  SQLContract.Item.TABLE_NAME,
144
155
  null,
@@ -158,5 +169,6 @@
158
169
  return item;
159
170
  }
160
171
  }
172
+
161
173
  コード
162
174
  ```