1.14M
Category: programmingprogramming

Ma’lumotlar bazasiga ulanish jarayonlarini dasturlash

1.

MA’LUMOTLAR BAZASIGA ULANISH
JARAYONLARINI DASTURLASH.
MB va MBBTlari haqida tushunchalar.
Qt muhitidan turli MBlariga ulanish usullari.

2.

MB VA MBBTNING ASOSIY TUSHUNCHALARI.
Ma'lumotlar bazasi (JB) - bu hisoblash tizimining xotirasida
saqlanadigan va ma’lum bir predmet sohasidagi
ob'ektlarning holati va ularning o'zaro aloqalarini aks ettirish
uchun tuzilgan ma'lumotlar to'plamidir.
Kompyuter ma'lumotlar bazalarida oddiy matnlardan
(familiya, ism va manzil kabi) murakkab tuzilmalargacha,
shu jumladan rasmlar, tovushlar xam saqlanishi mumkin.
Ma'lumotlarni oldindan ma'lum bo'lgan formatda saqlash turli
xil ishlov berish usullarini qo'llash orqali ma'lumotlarni
kerakli formatda olish imkonini beradi. Ma'lumotlar
bazasining ishlashi ma'mur(administrator) tomonidan
ta'minlanadi.

3.

MB VA MBBTNING ASOSIY TUSHUNCHALARI.
Ma'lumotlar bazasi administratori - ma'lumotlar
bazasiga talablarni ishlab chiqish, uni loyihalashtirish,
joriy etish, samarali foydalanish va saqlash, shu
jumladan ma'lumotlar bazasi foydalanuvchilarini
boshqarish va ruxsatsiz kirishdan himoya qilish uchun
mas'ul shaxs. MBBT-ning muhim vazifasi ma'lumotlar
bazasining yaxlitligini ta'minlashdir.
Ma'lumotlar
bazasining
yaxlitligi
ma'lumotlar
bazasining xususiyati bo'lib, ma'lumotlar bazasida
dasturlarning to'g'ri ishlashi uchun zarur va etarli
bo'lgan to'liq va izchil ma'lumotlar mavjudligini
anglatadi.

4.

MB VA MBBTNING ASOSIY TUSHUNCHALARI.
Ma'lumotlar bazasida saqlanadigan ma'lumotlarning
mantiqiy tuzilishi ma'lumotlar taqdimot modeli deb
nomlanadi.Ma'lumotlarni
taqdim
etishning
asosiy
modellariga:
ierarxik,
tarmoq,
realatsion.
Ma'lumotlar bazasini loyihalashtirishning asosiy vazifasi tizim rivojlanib borishi bilan tuzilgan strukturani qayta tiklash
zaruratini bartaraf etish. Uni hal qilish uchun o'zaro
bog'langan ma'lumotlar modellari kompleksi yaratilmoqda.

5.

MB VA MBBTNING ASOSIY TUSHUNCHALARI.
Ierarxik model ma'lumotlarni daraxtsimon tashkil qilishni
o'z zimmasiga oladi. Tuzilishning eng yuqori darajasida
dastlabki tugunlari bo'lmagan daraxtning ildizi
joylashgan. Qolgan tugunlar yuqoridagi tugun orqali
bog'langan.

6.

MB VA MBBTNING ASOSIY TUSHUNCHALARI.
Tarmoq modeli har qanday elementni boshqa biron bir
element bilan bog'lash mumkin bo'lganda, ma'lumotlarni
tarmoq tuzilishi shaklida tashkil qilishni o'z zimmasiga
oladi.

7.

MB VA MBBTNING ASOSIY TUSHUNCHALARI.
Relyatsion model (munosabat so'zidan kelib chiqqan holda) ikki o'lchovli
jadvallardan (munosabatlar) foydalanishni o'z ichiga oladi, ularning
orasidagi munosabatlar bir yoki bir nechta mos keladigan maydonlarning
qiymatlari orqali amalga oshiriladi. Bundan tashqari, jadvalning har bir
satri o'ziga xosdir, bu jadvalning bir yoki bir nechta maydonlarini o'z ichiga
olgan kalitlar yordamida ta'minlanadi.

8.

MB VA MBBTNING ASOSIY TUSHUNCHALARI.
Ma'lumotlar bazasini boshqarish tizimi (MBBT) bu
ko'plab foydalanuvchilar tomonidan ma'lumotlar
bazasini yaratish, saqlash va almashish uchun
mo'ljallangan til va dasturiy vositalar to'plamidir.
Ma'lumotlar bazasi foydalanuvchisiga apparat
darajasida tafsilotlarga berilmasdan, u bilan ishlash
qobiliyatini ta'minlash - ma'lumotlar bazasi boshqarish
tizimining asosiy vazifasi. Ya'ni, ma'lumotlar bazasiga
barcha foydalanuvchilar so'rovlari, ma'lumotlarni
qo'shish va yo'q qilish, so’rovlar, ma'lumotlarni
yangilash - bularning hammasi MBBT tomonidan
ta'minlanadi.

9.

MB VA MBBTNING ASOSIY TUSHUNCHALARI.
MBBT funktsiyalariga quyidagilar kiradi:
• ma'lumotlar tuzilishini belgilaydigan va ma'lumotlar ta'rifi tilida
yozilgan sxemani ma'lumotlar bilan keyingi ishlash uchun tizim
tomonidan ishlatiladigan ba'zi ichki ko'rinishga tarjima qilish;
• ma'lumotlar bazasini yaratish (ma'lumotlar bazasiga ma'lumotlarni
yuklash);belgilangan mezonlarga muvofiq saralash va tanlash,
shuningdek ma'lumotlar bazasining ba'zi bir qismini ajratib olish
uchun foydalanuvchi so'rovlarini amalga oshirish (ushbu MBBTda
qabul qilingan maxsus tilda tuzilgan), bu ma'lumotni tahrirlash va
qayta ishlash bilan birga bo'lishi mumkin;ma'lumotlar strukturasini
o'zgartirmasdan ma'lumotlar bazasining ba'zi qismlarini yangilash;
• ma'lumotlarni himoya qilishni va ulardan foydalanishning ustuvor
yo'nalishlarini ta'minlash.

10.

MB VA MBBTNING ASOSIY TUSHUNCHALARI.
Foydalanuvchilar ma'lumotlar bazasi bilan ishlashda
foydalanadigan dasturlar ilovalar deb nomlanadi. Umuman
olganda, turli xil dasturlar bitta ma'lumotlar bazasi bilan
ishlashi mumkin.Bitta ma'lumotlar bazasi bilan ishlaydigan
dasturlarni ko'rib chiqishda, ular parallel va bir-biridan
mustaqil ishlashi mumkin deb taxmin qilinadi va aynan
ma'lumotlar bazasi bilan ko'plab dasturlarning ishlashini
ularning har biri bajaradigan tarzda ishlab chiqilgan
ma'lumotlar bazasi to'g'ri ishlaydi, lekin boshqa dasturlar
tomonidan kiritilgan ma'lumotlar bazasidagi barcha
o'zgarishlarni hisobga oladi.

11.

MB VA MBBTNING ASOSIY TUSHUNCHALARI.
Ilovalarni MBBT muhitida ham, MBBT tashqarisida ham
yaratish mumkin - ma'lumotlar bazasiga kirish
vositalaridan
foydalanadigan
dasturlash
tizimi
yordamida (masalan, Delphi, C ++ Builder, Qt
…….).Ma'lumotlar bazasi bilan ishlash uchun ko'p
hollarda faqat MBBT vositalari bilan ishlashingiz
mumkin, masalan, so'rovlar va hisobotlarni yaratish.
Ilovalar
asosan
malakasiz
foydalanuvchilarga
ma'lumotlar bazasi bilan ishlashning qulayligini
ta'minlash zarur bo'lgan hollarda yoki MBBT interfeysi
foydalanuvchiga mos kelmaydigan hollarda ishlab
chiqiladi.

12.

MB VA MBBTNING ASOSIY TUSHUNCHALARI.
Ma'lumotlarni saqlashni tashkil etishning fizik
vakolatxonasi asosida ma'lumotlarni saqlash uchun
quyidagi arxitektura turlarini ajratish mumkin:
Mahalliy ma'lumotlar bazalari
Markazlashtirilgan ma'lumotlar bazalari

13.

MB VA MBBTNING ASOSIY TUSHUNCHALARI.
Mahalliy ma'lumotlar bazalari
Располагаются на компьютере, на котором работает
пользователь. Вся информация используется в
монопольном режиме. Пользователь сам регулирует
доступ к данным.
Компьютер,
располагающий
ресурсами
и
предоставляющий их, называется сервером.
Компьютер, который обращается к серверу за
данными или требованием решения задачи,
называется клиентом.

14.

ОСНОВНЫЕ ПОНЯТИЯ БД И СУБД.
• Централизованные базы данных
Централизованная база данных хранится на
центральном
компьютере,
пользователи
и
прикладные программы имеют удаленный доступ к
базе данных. Преимущества централизованной БД —
минимальные затраты на корректировку. Такая
система предпочтительна, если важны требования к
безопасности и целостности данных. Недостатком
является сложность в обслуживании, увеличение
времени отклика, затраты на передачу данных,
неисправность центральной системы выводит из
рабочего состояния всю сеть.

15.

ОСНОВНЫЕ ПОНЯТИЯ БД И СУБД.
• Централизованные базы данных
Централизованные базы данных реализуются на базе
двух архитектур с сетевым доступом:
• Архитектура «файл – сервер» предполагает
выделение одной из машин в сети в качестве
центральной (сервер файлов), на которой хранится
совместно используемая централизованная база
данных. Остальные машины сети исполняют роль
рабочих станций, на которых в основном и
производится обработка данных, получаемых в
виде файлов базы данных в соответствии с
запросами пользователей;

16.

ОСНОВНЫЕ ПОНЯТИЯ БД И СУБД.
• Централизованные базы данных
Централизованные базы данных реализуются на базе
двух архитектур с сетевым доступом:
• Архитектура «клиент – сервер» стала стандартом для
современных СУБД, когда сервер владеет и
распоряжается
информационными
ресурсами
системы, а клиент пользуется ими. Центральная
машина (сервер БД) помимо хранения базы данных
обеспечивает
выполнение
основного
объема
обработки данных. Запрос клиента (Раб Ст) порождает
поиск и извлечение данных на сервере, которые затем
транспортируются по сети к клиенту (в отличие от
передаваемых файлов в предыдущей архитектуре).

17.

ОСНОВНЫЕ ПОНЯТИЯ БД И СУБД.
• Элементы реляционных баз данных
Основным объектом реляционных баз данных является
таблица. Простейшая база данных имеет хотя бы одну
таблицу. Структуру любой двумерной таблицы
составляют столбцы и строки, аналогами которых в базе
данных являются поля и записи.

18.

ОСНОВНЫЕ ПОНЯТИЯ БД И СУБД.
• Элементы реляционных баз данных
Поле – это элементарная единица логической
организации данных, которая соответствует неделимой
единице информации (реквизиту).

19.

ОСНОВНЫЕ ПОНЯТИЯ БД И СУБД.
• Элементы реляционных баз данных
Поле обладает следующими характеристиками:
имя – определяет, как следует обращаться к данным этого поля;
тип – определяет тип данных, которые могут содержаться в поле;
размер – определяет предельную длину размещаемых в поле данных;
формат – определяет способ форматирования данных в поле.
С полями базы данных можно производить следующие операции
описание (указание имени, типа и длины поля);
редактирование (изменение имени, типа и длины поля);
манипуляция (добавление, перемещение и удаление полей).
Совокупность полей базы данных определяет ее структуру. Изменив
состав полей (или их свойства), мы изменяем структуру БД и,
соответственно, получаем новую БД.

20.

ОСНОВНЫЕ ПОНЯТИЯ БД И СУБД.
• Элементы реляционных баз данных
Единицей хранения и доступа к базе данных является запись. Записью,
например,может быть библиографическая карточка в электронном
каталоге, листок по учету кадров в базе данных отдела кадров, реферат
статьи в автоматизированном реферативном журнале, чертеж детали в
системе автоматизированного проектирования.
Запись (кортеж) – это совокупность логически связанных полей.
С записями можно производить следующие операции:
ввод данных в поля записей;
редактирование записей;
индексирование записей;
сортировка записей;
поиск записей по одному или нескольким критериям.

21.

MB VA MBBTNING ASOSIY TUSHUNCHALARI.
QT da quyidagi MBBTlariga ulanish mumkin:
• QDB2
IBM DB2 (version 7.1 and above)
• QIBASE
Borland InterBase
• QMYSQL MySQL
• QOCI
Oracle Call Interface Driver
• QODBC Open Database Connectivity (ODBC) - Microsoft SQL
Server and other ODBC-compliant databases
• QPSQL
PostgreSQL (versions 7.3 and above)
• QSQLITE2 SQLite version 2
• QSQLITE SQLite version 3
• QSYMSQL SQLite version 3 for Symbian SQL Database
• QTDS
Sybase Adaptive Server Note: obsolete from Qt 4.7

22.

MB VA MBBTNING ASOSIY TUSHUNCHALARI.
Accessga ulanish:
QSqlDatabase db = QSqlDatabase::addDatabase("QMYSQL");
db.setHostName("bigblue");
db.setDatabaseName("flightdb");
db.setUserName("acarlson");
db.setPassword("1uTbSbAs");
bool ok = db.open();

23.

MB VA MBBTNING ASOSIY TUSHUNCHALARI.
Accessga ulanish:
Loyiha faylida:
QT
+= sql
Biror faylda:
QSqlDatabase db = QSqlDatabase::addDatabase("QODBC");
qDebug() << db.drivers();
db.setHostName("localhost");
db.setDatabaseName("MSDB");
qDebug() << db.open();

24.

MB VA MBBTNING ASOSIY TUSHUNCHALARI.
Accessga ulanish:
QSqlDatabase db = QSqlDatabase::addDatabase("QODBC");
db.setHostName("127.0.0.1");
db.setDatabaseName("Driver={Microsoft Access Driver (*.mdb,
*.accdb)}SN=''BQ=C:\\database.accdb");
db.setUserName("root");
if(!db.open())
qDebug() << db.lastError().text();
else
qDebug() << "Connect!";

25.

MB VA MBBTNING ASOSIY TUSHUNCHALARI.
Ma’lumotlarni ko’rsatish:
QSqlTableModel model;
model.setTable("employee");
QTableView *view = new QTableView;
view->setModel(&model);
view->show();

26.

MB VA MBBTNING ASOSIY TUSHUNCHALARI.
Accessga ulanish:
#include <QtSql/QSqlTableModel>
#include <QSqlError>
QSqlDatabase db;
QSqlQueryModel *m=new QSqlQueryModel();
db = QSqlDatabase::addDatabase("QODBC3");
db.setDatabaseName("DRIVER={Microsoft
(*.mdb)};FIL={MS Access};DBQ=baza.mdb");
Access
if(!db.open())
{ QMessageBox::critical(this,tr("Ошибка"),db.lastError().text()); }
QSqlTableModel *model;
model = new QSqlTableModel(this);
model->setTable("ilmiy");
Driver

27.

MB VA MBBTNING ASOSIY TUSHUNCHALARI.
Accessga ulanish:
ui->tableView->setSelectionBehavior(QAbstractItemView::SelectRows);
ui->tableView->setSelectionMode(QAbstractItemView::SingleSelection);
ui->tableView->resizeColumnsToContents();
ui->tableView>setEditTriggers(QAbstractItemView::NoEditTriggers);
ui->tableView->horizontalHeader()->setStretchLastSection(true);
model->select(); // Делаем выборку данных из таблицы
//QTableView *view = new QTableView;
ui->tableView->setModel(model);
ui->tableView->show();

28.

MB VA MBBTNING ASOSIY TUSHUNCHALARI.
So’rovlar yaratish:
QSqlQuery query;
query.exec("SELECT name,salary FROM employee WHERE salary> 500");
while (query.next()) {
QString name = query.value(0).toString();
int salary = query.value(1).toInt();
qDebug() << name << salary;
}

29.

MB VA MBBTNING ASOSIY TUSHUNCHALARI.
Ma’lumotlarni Mbga yozish:
1) QSqlQuery query;
query.exec("INSERT INTO employee (id, name, salary) "
"VALUES (1001, 'Thad Beaumont', 65000)");
2) QSqlQuery query;
query.prepare("INSERT INTO employee (id, name, salary) "
"VALUES (:id, :name, :salary)");
query.bindValue(":id", 1001);
query.bindValue(":name", "Thad Beaumont");
query.bindValue(":salary", 65000);
query.exec();

30.

MB VA MBBTNING ASOSIY TUSHUNCHALARI.
Ma’lumotlarni Mbga yozish:
3) QSqlQuery query;
query.prepare("INSERT INTO employee (id, name, salary) "
"VALUES (?, ?, ?)");
query.addBindValue(1001);
query.addBindValue("Thad Beaumont");
query.addBindValue(65000);
query.exec();
English     Русский Rules