Форум программистов, компьютерный форум, киберфорум
Наши страницы
Программирование Android
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.83/12: Рейтинг темы: голосов - 12, средняя оценка - 4.83
Digetix
104 / 104 / 1
Регистрация: 09.04.2012
Сообщений: 651
1

Доступ к базе данных из разных активити

06.04.2014, 20:34. Просмотров 2167. Ответов 6
Метки нет (Все метки)

В общем-то в теме и вопрос, как получить доступ к базе данных и разных активити?
Есть класс работы с базой
Кликните здесь для просмотра всего текста
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
class DBHelper extends SQLiteOpenHelper { 
 
        public DBHelper(Context context) {
          super(context, "myDB", null, 1);
        }
 
        @Override
        public void onCreate(SQLiteDatabase db) {
          // создаем таблицу с полями
          db.execSQL("create table mytable ("
                  + "id integer primary key autoincrement," 
                  + "name text," 
                  + "tip text," 
                  + "adres text" + ");");
        }
 
        @Override
        public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
 
        }
      }

В одной активити получается создать и использовать эту базу и таблицу mytable, хочу в другой активити создать новую таблицу в этой базе данных и пользоваться этой таблице и в первой активити, и во второй
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
06.04.2014, 20:34
Ответы с готовыми решениями:

Доступ к базе данных
Здравствуйте. Имеется три активити (MainActivity (основная), Program (программы...

Доступ из активити в фрагмент
Здравствуйте, такой вопрос есть активити import java.io.File;...

Доступ к Spinner из другой активити
У меня есть последовательные спиннеры: spinner1 (bmv, lexus, honda), spinner2...

Вызов разных фрагментов или активити на клиенте по команде сервера
Подскажите пожалуйста направление/примеры/описалово/библиотеки, хоть что нибудь...

На телефоне highscreen 3 на всех активити происходит быстрый самовозврат к главной активити
Сделал меню в виде ListView. При клике на меню запускаются активити. На...

6
spydark91
86 / 86 / 13
Регистрация: 03.03.2011
Сообщений: 1,873
06.04.2014, 20:37 2
работайте из другой активити с бд так же как из певой активити
оно запишет в одну бд, если указать оддинаковое имя
0
Digetix
104 / 104 / 1
Регистрация: 09.04.2012
Сообщений: 651
06.04.2014, 20:57  [ТС] 3
Я так пробовал, всегда вываливается ошибка "no such table"
0
spydark91
86 / 86 / 13
Регистрация: 03.03.2011
Сообщений: 1,873
06.04.2014, 21:00 4
дак ее же создать надо

Добавлено через 1 минуту
http://developer.alexanderklimov.ru/android/database.php
1
Digetix
104 / 104 / 1
Регистрация: 09.04.2012
Сообщений: 651
06.04.2014, 21:09  [ТС] 5
Так её создаю. Одновременно создаю две таблицы в первой активити, если во второй происходит нажатие на кнопку, во вторую таблицу заполняются данные
0
spydark91
86 / 86 / 13
Регистрация: 03.03.2011
Сообщений: 1,873
06.04.2014, 21:20 6
покажите то, как вы работаете с бд
0
Digetix
104 / 104 / 1
Регистрация: 09.04.2012
Сообщений: 651
07.04.2014, 00:06  [ТС] 7
Вот так в первой активити создаю 2 таблицы
Кликните здесь для просмотра всего текста
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
class DBHelper extends SQLiteOpenHelper {          // класс работы с базой данных
 
        public DBHelper(Context context) {
          // конструктор суперкласса
          super(context, "myDB", null, 1);
        }
 
        @Override
        public void onCreate(SQLiteDatabase db) {
          // создаем таблицу с полями
          db.execSQL("create table mytable ("
                  + "id integer primary key autoincrement," 
                  + "name text," 
                  + "tip text," 
                  + "adres text," + ");");
       // создаем таблицу с полями
          db.execSQL("create table mypoints ("
                  + "id integer primary key autoincrement," 
                  + "namenumb text," 
                  + "tipname text," 
                  + "adres text,"  + ");");
        }
 
        @Override
        public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
 
        }
      }

Вот так читаю из второй таблицы
Кликните здесь для просмотра всего текста
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
                       db = dbHelper.getWritableDatabase();
            
            Cursor c = db.query("mypoints", null, null, null, null, null, null);
 
            if (c.moveToFirst()) {
 
                do 
                 { 
                  
                 } while (c.moveToNext());
              
             } else
                showToast("В mypoints ПУСТО");
             c.close();
                
              // закрываем подключение к БД
             dbHelper.close();

Записываю во вторую таблицу так (это во втором активити)
Кликните здесь для просмотра всего текста
Java
1
2
3
4
5
                     ContentValues cv = new ContentValues(); 
            db = dbHelperPoints.getWritableDatabase();
            cv.put("name", textViewName.getText().toString());
                    db.insert("mypoints", null, cv);
            dbHelperPoints.close();

И вот класс
Кликните здесь для просмотра всего текста
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
class DBHelperPoints extends SQLiteOpenHelper {          // класс работы с базой данных
 
            public DBHelperPoints (Context context) {
 
                   super(context, "myDB", null, 1);
            }
 
            @Override
            public void onCreate(SQLiteDatabase db) {
            }
 
            @Override
            public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
 
            }
          }


Добавлено через 2 часа 32 минуты
Вопрос снят. Первую вторую таблицу сразу не создавало, а я уже к ней обращался.
0
07.04.2014, 00:06
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
07.04.2014, 00:06

Как вызвать метод в активити классе из обычного не активити класса?
Есть активити в котором вводятся логин и пароль. При нажатии кнопки "войти" в...

Изменение параметров активити из другого активити
Как сделать так чтобы из первого активити поменять final ImageView...

Отображение активити поверх другого активити
Ребят подскажите пожалуйста как такое сделать. Есть активити с картой, по...


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

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

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