Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

Программирование Android

Войти
Регистрация
Восстановить пароль
 
Filtar
0 / 0 / 0
Регистрация: 16.11.2012
Сообщений: 14
#1

При считывании данных из таблицы, данные становятся пустыми - Программирование Android

08.06.2015, 20:10. Просмотров 314. Ответов 1
Метки нет (Все метки)

Проблема в том что когда я записываю новый элемент таблицы проблем не возникает и данные вводятся корректно, но когда я пытаюсь их считать, то все выведенные элементы определяются как Null или 0. При этом их количество выводится верно.
База данных
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
package com.example.work_2.sqlite;
 
import java.util.ArrayList;
import java.util.LinkedList;
import java.util.List;
import android.content.ContentValues;
import android.content.Context;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;
import android.util.Log;
import com.example.work_2.model.Raspisanie;;
 
public class SQLdatabaseDBAction extends SQLiteOpenHelper {
 
    // Версия базы данных
    private static final int DATABASE_VERSION = 1;
 
    // Имя базы данных
    private static final String DATABASE_NAME = "MYBD";
 
    /**
    * Конструктор
    */
    public SQLdatabaseDBAction(Context context) {
        super(context, DATABASE_NAME, null, DATABASE_VERSION);
    }
 
    /**
    * Конструктор
    */
    @Override
    public void onCreate(SQLiteDatabase db) {
        // SQL запрос на создание таблицы
        String CREATE_SQLDATABASEDBACTION = "CREATE TABLE SQLDATABASE ( " +
                "ID INTEGER PRIMARY KEY AUTOINCREMENT, "+
                "DAY TEXT, "+
                "VOLUME TEXT, "+
                "TYPE TEXT, "+
                "TIME TEXT, "+
                "DAY_ID INTEGER )";
        // Выполняем запрос на создание таблицы
        db.execSQL(CREATE_SQLDATABASEDBACTION);
    }
 
    @Override
    public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
        // Если с таблицей ппроблемы - удаляем предыдущую версию таблицы
        db.execSQL("DROP TABLE IF EXISTS SQLDATABASE");
        // Пересоздаем таблицу
        this.onCreate(db);
    }
 
 
    //----------------------------------------------------------------------------------------
    // Основные операции для работы с таблицей (добавление, удаление, редактирование и т.п.)
    //----------------------------------------------------------------------------------------
 
 
    // Имя тиблицы
    private static final String TABLE_SQLDATABASE = "SQLDATABASE";
 
    // Колонки в таблице
    private static final String KEY_ID = "ID";
    private static final String KEY_DAY = "DAY";
    private static final String KEY_VOLUME = "VOLUME";
    private static final String KEY_TYPE = "TYPE";
    private static final String KEY_TIME = "TIME";
    private static final String KEY_DAY_ID = "DAY_ID";
 
    private static final String[] COLUMNS = {KEY_ID, KEY_DAY, KEY_VOLUME, KEY_TYPE, KEY_TIME, KEY_DAY_ID};
 
    /**
    * Добавить запись в БД
    */
    public void addRec(Raspisanie raspisanie){
        Log.d("addBook", raspisanie.toString());
        // 1. Указатель на изменяемую БД
        SQLiteDatabase db = this.getWritableDatabase();
        // 2. Список данных "column/value"
        ContentValues values = new ContentValues();
        values.put(KEY_DAY, raspisanie.getDAY()); // 
        values.put(KEY_VOLUME, raspisanie.getVOLUME()); // 
        values.put(KEY_TYPE, raspisanie.getTYPE()); // 
        values.put(KEY_TIME, raspisanie.getTIME()); // 
        values.put(KEY_DAY_ID, raspisanie.getDAY_ID()); // 
        // 3. Добавили запись
        db.insert(TABLE_SQLDATABASE, // table
                null, //nullColumnHack
                values); // key/value -> keys = column names/ values = column values
        // 4. Закрыли указатель
        //db.query("SQLDATABASE", null, null, null, null, null, "KEY_DAY_ID");
        db.close();
    }
 
    /**
    * Дать запись из БД по идентификатору.
    */
    public Raspisanie getRec(int id){
        // 1. Указатель на читаемую БД
        SQLiteDatabase db = this.getReadableDatabase();
        // 2. Запрос на чтение
        Cursor cursor =
                db.query(TABLE_SQLDATABASE, // a. table
                COLUMNS, // b. column names
                " id = ?", // c. selections
                new String[] { String.valueOf(id) }, // d. selections args
                null, // e. group by
                null, // f. having
                KEY_DAY_ID, // g. order by
                null); // h. limit
        // 3. Если есть записи - перемещаем курсор на первую
        if (cursor != null)
            cursor.moveToFirst();
        // 4. Заполняем данными результат
        Raspisanie raspisanie = new Raspisanie();
        raspisanie.setID(Integer.parseInt(cursor.getString(0)));
        raspisanie.setDAY((cursor.getString(1)));
        raspisanie.setVOLUME((cursor.getString(2)));
        raspisanie.setTYPE((cursor.getString(3)));
        raspisanie.setTIME((cursor.getString(4)));
        raspisanie.setDAY_ID(Integer.parseInt(cursor.getString(5)));
        // 5. Закрываем указатель на БД
        db.close();
        // 6. Возвращаем результат
        return raspisanie;
    }
 
    /**
    * Дать все записи из БД
    */
    public List<Raspisanie> getRecAll() {
        List<Raspisanie> raspisanies = new LinkedList<Raspisanie>();
        // 1. Создаем запрос на выборку
        String query = "SELECT  * FROM " + TABLE_SQLDATABASE;
        // 2. Указатель на изменяемую БД
        SQLiteDatabase db = this.getWritableDatabase();
        Cursor cursor = db.rawQuery(query, null);
        // 3. Создаем результирующий список
        Raspisanie raspisanie = null;
        if (cursor.moveToFirst()) {
            do {
                raspisanie = new Raspisanie();
                raspisanie.setID(Integer.parseInt(cursor.getString(0)));
                raspisanie.setDAY((cursor.getString(1)));
                raspisanie.setVOLUME((cursor.getString(2)));
                raspisanie.setTYPE((cursor.getString(3)));
                raspisanie.setTIME((cursor.getString(4)));
                raspisanie.setDAY_ID(Integer.parseInt(cursor.getString(5)));
                // Добавляем запись в список
                raspisanies.add(raspisanie);
            } while (cursor.moveToNext());
        }
        // 4. Закрываем указатель
        db.close();
        // 5. Возвращаем результат
        return raspisanies;
    }
 
    /**
    * Редактировать запись в БД
    */
    public int edRec(Raspisanie raspisanie) {
        // 1. Указатель на изменяемую БД
        SQLiteDatabase db = this.getWritableDatabase();
        // 2. Список данных "column/value"
        ContentValues values = new ContentValues();
        values.put("DAY", raspisanie.getDAY()); // 
        values.put("VOLUME", raspisanie.getVOLUME()); // 
        values.put("TYPE", raspisanie.getTYPE()); // 
        values.put("TIME", raspisanie.getTIME()); // 
        values.put("DAY_ID", raspisanie.getDAY_ID()); // 
        // 3. Обновляем запись
        int i = db.update(TABLE_SQLDATABASE, //table
                values, // column/value
                KEY_ID+" = ?", // selections
                new String[] { String.valueOf(raspisanie.getID()) }); //selection args
        // 4. Закрываем указатель
        db.close();
        // 5. Возвращаем результат выполнение функции UPDATE
        return i;
    }
 
    /**
    * Удалить запись из БД
    */
    public void deleteRec(Raspisanie raspisanie) {
        // 1. Указатель на изменяемую БД
        SQLiteDatabase db = this.getWritableDatabase();
        // 2. Удаляем запись
        db.delete(TABLE_SQLDATABASE,
                KEY_ID+" = ?",
                new String[] { String.valueOf(raspisanie.getID()) });
        // 3. Зкрываем указатель
        db.close();
    }
 
    /**
    * Удалить запись по идентификатору
    */
    public void deleteRec(int id) {
        Raspisanie d=new Raspisanie();
       d.setID(id);
       deleteRec(id);
    }
 
}
Страница где выводятся все элементы таблицы
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
package com.example.work_2;
 
 
import java.util.List;
import android.support.v7.app.ActionBarActivity;
import android.app.AlertDialog;
import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.widget.LinearLayout;
import android.widget.ListView;
import android.widget.TextView;
import com.example.work_2.model.Raspisanie;
import com.example.work_2.sqlite.SQLdatabaseDBAction;
 
public class Table extends ActionBarActivity {
    
    String[] groups = new String[] {"Понедельник", "Вторник", "Среда", "Четверг", "Пятница","Суббота"};
    
    AlertDialog.Builder ad;
    Context context;
    ListView lvMain;
    final String LOG_TAG = "myLogs";
    
 
 
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_table);
        SQLdatabaseDBAction db = new SQLdatabaseDBAction(this);
        LayoutInflater ltInflater = getLayoutInflater();
        LinearLayout linLayout = (LinearLayout) findViewById(R.id.linLayout);
 
        List<Raspisanie> list = db.getRecAll();
 
        for (int i = 0; i < list.size(); i++) {
            View item = ltInflater.inflate(R.layout.lable, linLayout, false);
            //TextView tvName = (TextView) item.findViewById(R.id.TextView03);
            //TextView tvName1 = (TextView) item.findViewById(R.id.textView1);
            //tvName1.setText(list.get(i).toString() );
            //tvName.setText(String.valueOf(list.size()));
            //linLayout.addView(item);
            
            TextView text1 = (TextView) item.findViewById(R.id.text1);
            TextView text2 = (TextView) item.findViewById(R.id.text2);
            TextView text3 = (TextView) item.findViewById(R.id.text3);
            TextView text4 = (TextView) item.findViewById(R.id.text4);
            
            text1.setText(list.get(i).toString() );
            text2.setText(list.get(i).toString1() );
            text3.setText(list.get(i).toString2() );
            //text1.setText(list1.toString() );
            //text2.setText(list1.toString1() );
            //text3.setText(list1.toString2() );
            //text4.setText(list.get(i).toString3() );
            //text4.setText(list.get(i).toString3() );
            text4.setText(String.valueOf(i));
            linLayout.addView(item);
          }
        
        
 
    }
    public void onClick(View v)
    {
        Intent intent = new Intent(Table.this, Add_new_table.class);
        startActivity(intent);
    }
 
    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.table, menu);
        return true;
    }
 
    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        // Handle action bar item clicks here. The action bar will
        // automatically handle clicks on the Home/Up button, so long
        // as you specify a parent activity in AndroidManifest.xml.
        int id = item.getItemId();
        if (id == R.id.action_settings) {
            return true;
        }
        return super.onOptionsItemSelected(item);
    }
}
И модули базы данных
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
package com.example.work_2.model;
 
public class Raspisanie {
        private int id;
        private String DAY;
        private String VOLUME;
        private String TYPE;
        private String TIME;
        private int    DAY_ID;
        private int fID;
 
        public int getID(){
             return fID;
       }
 
        public void setID(int d){
             fID=d;
       }
 
        private String fDAY;
 
        public String getDAY(){
             return fDAY;
       }
 
        public void setDAY(String d){
             fDAY=d;
       }
 
        private String fVOLUME;
 
        public String getVOLUME(){
             return fVOLUME;
       }
 
        public void setVOLUME(String d){
             fVOLUME=d;
       }
 
        private String fTYPE;
 
        public String getTYPE(){
             return fTYPE;
       }
 
        public void setTYPE(String d){
             fTYPE=d;
       }
 
        private String fTIME;
 
        public String getTIME(){
             return fTIME;
       }
 
        public void setTIME(String d){
             fTIME=d;
       }
 
        private int fDAY_ID;
 
        public int getDAY_ID(){
             return fDAY_ID;
       }
 
        public void setDAY_ID(int d){
             fDAY_ID=d;
       }
     
        public Raspisanie(){}
     
        
        public Raspisanie(String DAY, String VOLUME,String TYPE,String TIME, int DAY_ID) {
            super();
            this.DAY = DAY;
            this.VOLUME = VOLUME;
            this.TYPE = TYPE;
            this.TIME = TIME;
            this.DAY_ID = DAY_ID;
        }
     
        //getters & setters
     
        @Override
        public String toString() {
            return "122";
        }
        public String toString1() {
            return VOLUME;
        }
        public String toString2() {
            return TYPE;
        }
        public String toString3() {
            return TIME + " " + DAY_ID;
        }
 
}
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.06.2015, 20:10
Здравствуйте! Я подобрал для вас темы с ответами на вопрос При считывании данных из таблицы, данные становятся пустыми (Программирование Android):

Ошибка в считывании данных из EditText - Программирование Android
Здравствуйте, уважаемые программисты! Не могли бы вы мне помочь(ПОЖАЛУЙСТА!!!)? Проблема в том, что я ввожу в EditText правильный...

Ошибки при считывании с хостинга ftp - Программирование Android
Лог ошибки: 03-26 11:36:25.148 13800-13800/spsoft.passwordgenerator E/AndroidRuntime: FATAL EXCEPTION: main ...

Ошибка при считывании с XML и записи в TextEdit - Программирование Android
Здраствуйте, Андроид только начал изучать. Он мне нужен для дипломной работы. А именно написать приложение которое предназначено для игры в...

если я нажимаю кнопку back в IE , то все поля, которые я контролировал с помощью JavaScript становятся пустыми - JavaScript
Проблема вот какого плана !!! Есть фрма в которой я с помощью javascript проверяю правильность введенных пользователем данных. Если...

При считывании из файла (через Thread) в массив пишутся другие данные - Delphi
Подскажите плиз, не могу понять, где ошибка. при считывании из файла в массив через поток, пишутся не те числа, что в текстовом файле. ...

SQLite Кодировка данных при считывании из БД - Delphi БД
Здравствуйте. Подскажите пожалуйста, я записываю строку в базу SQLite вот так mybase.ExecSQL('insert into NewTable (MYTEXT)...

1
Mikalai
259 / 235 / 95
Регистрация: 11.01.2015
Сообщений: 662
10.06.2015, 02:38 #2
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
Filtar, от скуки покопался в твоём коде. Тяжело читается ))

Исправил немного. Тут:

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
public class SQLdatabaseDBAction extends SQLiteOpenHelper {
 
    // Версия базы данных
    private static final int DATABASE_VERSION = 1;
 
    // Имя базы данных
    private static final String DATABASE_NAME = "MYBD";
 
    /**
     * Конструктор
     */
    public SQLdatabaseDBAction(Context context) {
        super(context, DATABASE_NAME, null, DATABASE_VERSION);
    }
 
    /**
     * Конструктор
     */
    @Override
    public void onCreate(SQLiteDatabase db) {
        // SQL запрос на создание таблицы
        String CREATE_SQLDATABASEDBACTION = "CREATE TABLE SQLDATABASE ( " +
                KEY_ID +" INTEGER PRIMARY KEY AUTOINCREMENT, "+
                KEY_DAY+" TEXT, "+
                KEY_VOLUME+" TEXT, "+
                KEY_TYPE+" TEXT, "+
                KEY_TIME+" TEXT, "+
                KEY_DAY_ID+" INTEGER);";
        // Выполняем запрос на создание таблицы
        db.execSQL(CREATE_SQLDATABASEDBACTION);
    }
 
    @Override
    public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
        // Если с таблицей ппроблемы - удаляем предыдущую версию таблицы
        //db.execSQL("DROP TABLE IF EXISTS SQLDATABASE");
        // Пересоздаем таблицу
        //this.onCreate(db);
    }
 
 
    //----------------------------------------------------------------------------------------
    // Основные операции для работы с таблицей (добавление, удаление, редактирование и т.п.)
    //----------------------------------------------------------------------------------------
 
 
    // Имя тиблицы
    private static final String TABLE_SQLDATABASE = "SQLDATABASE";
 
    // Колонки в таблице
    //                private static final String KEY_ID = "ID";
    private static final String KEY_ID = "_id";
    private static final String KEY_DAY = "DAY";
    private static final String KEY_VOLUME = "VOLUME";
    private static final String KEY_TYPE = "TYPE";
    private static final String KEY_TIME = "TIME";
    private static final String KEY_DAY_ID = "DAY_ID";
 
    private static final String[] COLUMNS = {KEY_ID, KEY_DAY, KEY_VOLUME, KEY_TYPE, KEY_TIME, KEY_DAY_ID};
 
    /**
     * Добавить запись в БД
     */
    public void addRec(Raspisanie raspisanie){
 
        // 1. Указатель на изменяемую БД
        SQLiteDatabase db = this.getWritableDatabase();
        // 2. Список данных "column/value"
        ContentValues values = new ContentValues();
        values.put(KEY_DAY, raspisanie.getDAY()); //
 
        values.put(KEY_VOLUME, raspisanie.getVOLUME()); //
        values.put(KEY_TYPE, raspisanie.getTYPE()); //
        values.put(KEY_TIME, raspisanie.getTIME()); //
        values.put(KEY_DAY_ID, raspisanie.getDAY_ID()); //
        // 3. Добавили запись
        db.insert(TABLE_SQLDATABASE, // table
                null, //nullColumnHack
                values); // key/value -> keys = column names/ values = column values
        // 4. Закрыли указатель
        //db.query("SQLDATABASE", null, null, null, null, null, "KEY_DAY_ID");
        db.close();
    }
 
    /**
     * Дать запись из БД по идентификатору.
     */
    public Raspisanie getRec(int id){
        // 1. Указатель на читаемую БД
        SQLiteDatabase db = this.getReadableDatabase();
        // 2. Запрос на чтение
        Cursor cursor =
                db.query(TABLE_SQLDATABASE, // a. table
                        COLUMNS, // b. column names
                        "_id = ?", // c. selections
                        new String[] { String.valueOf(id) }, // d. selections args
                        null, // e. group by
                        null, // f. having
                        KEY_DAY_ID, // g. order by
                        null); // h. limit
        // 3. Если есть записи - перемещаем курсор на первую
        if (cursor != null)
            cursor.moveToFirst();
        // 4. Заполняем данными результат
        Raspisanie raspisanie = new Raspisanie();
        raspisanie.setID(Integer.parseInt(cursor.getString(0)));
        raspisanie.setDAY((cursor.getString(1)));
        raspisanie.setVOLUME((cursor.getString(2)));
        raspisanie.setTYPE((cursor.getString(3)));
        raspisanie.setTIME((cursor.getString(4)));
        raspisanie.setDAY_ID(Integer.parseInt(cursor.getString(5)));
        // 5. Закрываем указатель на БД
        db.close();
        // 6. Возвращаем результат
        return raspisanie;
    }
 
    /**
     * Дать все записи из БД
     */
    public List<Raspisanie> getRecAll() {
        List<Raspisanie> raspisanies = new LinkedList<>();
        // 1. Создаем запрос на выборку
        String query = "SELECT * FROM " + TABLE_SQLDATABASE;
        // 2. Указатель на изменяемую БД
        SQLiteDatabase db = this.getWritableDatabase();
        Cursor cursor = db.rawQuery(query, null);
 
        // 3. Создаем результирующий список
        //Raspisanie raspisanie = null;
        if (cursor.moveToFirst()) {
            do {
                int id = cursor.getInt(cursor.getColumnIndex(KEY_ID));
                String day = cursor.getString(cursor.getColumnIndex(KEY_DAY));
                String volume = cursor.getString(cursor.getColumnIndex(KEY_VOLUME));
                String type = cursor.getString(cursor.getColumnIndex(KEY_TYPE));
                String time = cursor.getString(cursor.getColumnIndex(KEY_TIME));
                int dayNum = cursor.getInt(cursor.getColumnIndex(KEY_DAY_ID));
 
                raspisanies.add(new Raspisanie(day, volume, type, time, dayNum));
            } while (cursor.moveToNext());
        }
        // 4. Закрываем указатель
        db.close();
        // 5. Возвращаем результат
        return raspisanies;
    }
 
    /**
     * Редактировать запись в БД
     */
    public int edRec(Raspisanie raspisanie) {
        // 1. Указатель на изменяемую БД
        SQLiteDatabase db = this.getWritableDatabase();
        // 2. Список данных "column/value"
        ContentValues values = new ContentValues();
        values.put("DAY", raspisanie.getDAY()); //
        values.put("VOLUME", raspisanie.getVOLUME()); //
        values.put("TYPE", raspisanie.getTYPE()); //
        values.put("TIME", raspisanie.getTIME()); //
        values.put("DAY_ID", raspisanie.getDAY_ID()); //
        // 3. Обновляем запись
        int i = db.update(TABLE_SQLDATABASE, //table
                values, // column/value
                KEY_ID+" = ?", // selections
                new String[] { String.valueOf(raspisanie.getID()) }); //selection args
        // 4. Закрываем указатель
        db.close();
        // 5. Возвращаем результат выполнение функции UPDATE
        return i;
    }
 
    /**
     * Удалить запись из БД
     */
    public void deleteRec(Raspisanie raspisanie) {
        // 1. Указатель на изменяемую БД
        SQLiteDatabase db = this.getWritableDatabase();
        // 2. Удаляем запись
        db.delete(TABLE_SQLDATABASE,
                KEY_ID+" = ?",
                new String[] { String.valueOf(raspisanie.getID()) });
        // 3. Зкрываем указатель
        db.close();
    }
 
    /**
     * Удалить запись по идентификатору
     */
    public void deleteRec(int id) {
        Raspisanie d=new Raspisanie();
        d.setID(id);
        deleteRec(id);
    }
 
}
и тут:

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
public class Raspisanie {
    private int id;
    private String DAY;
    private String VOLUME;
    private String TYPE;
    private String TIME;
    private int    DAY_ID;
    private int fID;
 
    @Override
    public String toString() {
        return ""+DAY+" "+VOLUME+" "+TYPE+" "+TIME+" "+DAY_ID;
    }
 
    public int getID(){
        return fID;
    }
 
    public void setID(int d){
        fID=d;
    }
 
    private String fDAY;
 
    public String getDAY(){
        return DAY;
    }
 
    public void setDAY(String d){
        DAY=d;
    }
 
    private String fVOLUME;
 
    public String getVOLUME(){
        return VOLUME;
    }
 
    public void setVOLUME(String d){
        fVOLUME=d;
    }
 
    private String fTYPE;
 
    public String getTYPE(){
        return TYPE;
    }
 
    public void setTYPE(String d){
        fTYPE=d;
    }
 
    private String fTIME;
 
    public String getTIME(){
        return TIME;
    }
 
    public void setTIME(String d){
        fTIME=d;
    }
 
    private int fDAY_ID;
 
    public int getDAY_ID(){
        return DAY_ID;
    }
 
    public void setDAY_ID(int d){
        fDAY_ID=d;
    }
 
    public Raspisanie(){}
 
 
    public Raspisanie(String DAY, String VOLUME,String TYPE,String TIME, int DAY_ID) {
        super();
        this.DAY = DAY;
        this.VOLUME = VOLUME;
        this.TYPE = TYPE;
        this.TIME = TIME;
        this.DAY_ID = DAY_ID;
    }
 
    //getters & setters
 
 
    public String toString1() {
        return VOLUME;
    }
    public String toString2() {
        return TYPE;
    }
    public String toString3() {
        return TIME + " " + DAY_ID;
    }
 
}
проверил вот таким кодом:

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
public class MainActivity extends Activity {
 
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
 
        Raspisanie raspisanie1 = new Raspisanie("1day", "1volume", "1type", "1time", 1777);
        Raspisanie raspisanie2 = new Raspisanie("2day", "2volume", "2type", "2time", 2777);
        SQLdatabaseDBAction dbAction = new SQLdatabaseDBAction(this);
 
        dbAction.addRec(raspisanie1);
        dbAction.addRec(raspisanie2);
 
        List<Raspisanie> list = dbAction.getRecAll();
 
        Log.d("myLog", "Start");
        for(Raspisanie item: list) {
            Log.d("myLog", "" + item.getDAY());
            Log.d("myLog", "" + item.getVOLUME());
            Log.d("myLog", "" + item.getTYPE());
            Log.d("myLog", "" + item.getTIME());
            Log.d("myLog", "" + item.getDAY_ID());
        }
        Log.d("myLog", "End");
    }
}
всё работает. В классе Raspisanie много лишних букв "f" ))
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
10.06.2015, 02:38
Привет! Вот еще темы с ответами:

Ошибка при считывании данных с файла - Visual C++
Среда разработки Visual Studio 2008. Тип проэкта - консольное приложение. Проблема в следующем. Для считывания данных с файла...

Ошибка при считывании строковых данных - C++
Нужно просто считать русский текст из файла, выводит смайлики без пробелов. #include &quot;stdafx.h&quot; #include &quot;fstream&quot; #include...

Exception при считывании данных с помощью ifstream - C++
При компилировании кода выдаёт ошибку (см. скрин), крутил код по-разному, проверил все функции, нерабочей оказалась &quot;read_file&quot;, эту...

Проверка правильности данных при считывании из файла - C++
Вопрос, есть ли что-то подобное cin.bad, но для считывания из файла? Программа заполняет массив из текстового файла. Собственно, в коде все...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru