Методические указания по выполнению лабораторных работ по дисциплине «программирование мобильных устройств»



Pdf көрінісі
бет21/30
Дата20.10.2023
өлшемі3,51 Mb.
#186972
түріМетодические указания
1   ...   17   18   19   20   21   22   23   24   ...   30
Байланысты:
15.-Metod LR Programmirovanie-mobil nyh-ustroistv 09.03.02 2021
1-Зертхана, Linux3lab (1)
 "_id"
;
 public static final 
String
 
KEY_NAME
 
=
"name"

public static final 
String
 
KEY_NUMBER
 
=
 "number"

После задания констант нужно поправить конструктор, где будут ис-
пользоваться наши константы. 
super
(context,
 
DATABASE_NAME
,
 null
,
 
DATABASE_VERSION
); 
Теперь в методе onCreate создадим таблицы и заполним их начальны- ми 
данными с помощью специальных команд SQL. 
public void 
onCreate(SQLiteDatabase db) { db.execSQL(
"create table " 

TABLE_CONTACTS 
+
 
"("
 

KEY_ID 
+
" integer primary key," 
+
 
KEY_NAME
 
+
 " text,"
+
KEY_NUMBER
+
 
" text"
 
+
 
")"
); 

При написании команд и ключей, необходимо между ними 
вставлять пробелы, чтобы получить корректный SQL запрос. 
В методе onUpgrade, который сработает при изменении номера версии можно 
89 


реализовать запрос в БД на уничтожение таблицы (
droptable)
, после чего вновь 
вызвать метод onCreate для создания новой версии таблицы с обновленными 
структурой. 
public void 
onUpgrade(SQLiteDatabase db,
 int 
oldVersion,
 int 
newVersion) { 
db.execSQL(
"drop_table "

TABLE_CONTACTS
); onCreate(db); 

После создания БД в классе MainActivity будем сохранять данные в базу и 
считывать их оттуда. 
Объявляем переменную класса dbWork (DBWork
dbWork
;), создаем его 
экземпляр в методе onCreate(dbWork = 
new
DBWork(
this
);), в методе onClick 
создаем 
объект 
класса 
SQLiteDatabase(SQLiteDatabasedatabase 

dbWork
.getWritableDatabase();)
 
этот класс переназначен для управления базой 
данных 
SQLite. 
Затем 
нужно 
импортировать 
этот 
класс 
(
import
android.database.sqlite.SQLiteDatabase;). 
В классе SQLiteDatabase определены следующие методы: 

query() – для чтения данных изБД;



insert() – для добавления данных вБД;



delete() – для удаления данных изБД;



update() – для изменения данных вБД;



execSQL() – для выполнения любого кода на языке SQL относительно 
базыданных.

Далее создадим объект класса ContentValues(ContentValuescontentValues = 
new
ContentValues();)
 

 
этот класс используется для добавления новых строк в
 
таблицу. И также запишем его в 
import
android.content.ContentValues;. 
Далее напишем в case в качестве обработчика кнопки add следующие строки: 
contentValues.put(DBHelper.
KEY_NAME
, name);//заполнение content.Values 
попарно //name, contentValues.put(DBHelper.
KEY_MAIL
, number);// номер 
database.insert(DBWork.
TABLE_CONTACTS
,
null
, contentValues);//методом insert 
//вставляем строки в таблицу 
90 


С помощью обработчика Read реализуем чтение всех записей в таблице – 
методом query (Cursorcursor = database.query(DBWoek.


Достарыңызбен бөлісу:
1   ...   17   18   19   20   21   22   23   24   ...   30




©engime.org 2024
әкімшілігінің қараңыз

    Басты бет