mapdb, injektor PDDIKTI

Slides:



Advertisements
Presentasi serupa
SQL – DML.
Advertisements

SQL.
Sejarah (1) • Tahun 1974, Dr. Chamberlin dari Saan Jose Laboratorium IBM mendefinisikan sebuah bahasa untuk mengakses database yang disebut dengan SEQUEL.
SQL (Struktured Query Language)
PERINTAH SQL.
Praktikum Database Query Tingkat Lanjut Abdul Kadir.
Database Create-Retrieve-Update-Delete (CRUD)
DDL & Aturan Referential
PEMROGRAMAN BASIS DATA
EXERCISE DML Part I 1.Buatlah sebuah tabel baru nama = Dosen kolom = nik, nama,gelardpn,gelarblkg, jenkel,tgllahir,alamat,notelp. primary key  nik * type.
Latihan SQL.
Praktikum Database Pengenalan Query
SQL.
Pertemuan : Basisdata Terapan
DATA MANIPULATION LANGUAGE (DML)
Pemrograman Visual II Database Management System (DBMS) Oleh: Erna Sri Hartatik, S.Kom
Pemrograman Web/MI/D3 sks
TRIGGER.
1 Bab 3 Structured Query Language (SQL) Basis Data
Microsoft SQL Server DDL dan DML dasar
Data Definition Language dan Data Manipulation Language

Antonius Wahyu Sudrajat, S. Kom., M.T.I. Perintah SQL: Data Definition.
Data Types Data Definition Language Referential Constraint SQL Query
BAHASA QUERY TERAPAN OLEH : HARSITI, ST.
Sistem Basis Data Pertemuan 11 Presented by :
MANAJEMEN BASIS DATA Pertemuan 8 SUBQUERY.
STRUCTURED QUERY LANGUAGE (SQL)
Data Manipulation Language
Data Manipulation Language Presented by : Herianto.
Antonius Wahyu Sudrajat, S. Kom., M.T.I. Perintah SQL: Data Definition.
Basis Data Terapan Antonius Wahyu Sudrajat, S. Kom., M.T.I Perintah Drop Sintak Menghapus Tabel Drop Aturan: Harus dimulai dari table yang paling children.
Tim Asisten Praktikum Rekayasa Perangkat Lunak 09/10.
JOIN Kuliah Tambahan.
Modul SBD-2 …….. SQL Server
Mengekspor, Menyalin, dan Mengimpor Data
Pertemuan 3 INSERT data dan Basic DML
PEMASARAN BERBASIS WEB
FUNGSI-FUNGSI AKSES MySql
SQL.
Bahasa query terpan.
JOIN.
SQL DML Pertemuan 6 dan 7.
Sistem Basis Data ABU SALAM, M.KOM.
DATA MANIPULATION LANGUAGE (DML)
PEMASARAN BERBASIS WEB
SQL pada basis data client-server
QUERY SQL Modul Query.
ALJABAR RELASIONAL dan QUERY
SQL OVERVIEW.
Dml(Data manipulation language)
Structured Query Language (SQL)
OLEH : Slamet Sn Wibowo Wicaksono
Structured Query Language
BEKERJA DENGAN STRUCTURED QUERY LANGUAGE (SQL)
BEKERJA DENGAN STRUCTURED QUERY LANGUAGE (SQL)
Structured Query Language
Data Manipulation Language (DML)
MODUL 3 DATA MANIPULATION LANGUAGE
Aplikasi Database Dosen : Sarwo, Skom,.Mkom Url :
EXERCISE DML Part I Buatlah sebuah tabel baru nama = Dosen
MODUL 3 DATA MANIPULATION LANGUAGE
Basis Data Bab 3 Structured Query Language (SQL).
Referensi Bahasa MySQL
Membuat Query ACCESS Query adalah fasilitas untuk mengakses data dengan cara  yang memungkin bagi kita untuk menampilkan data-data dari database dalam.
Praktikum Sistem Basis Data - 2
Praktikum 2 - Sistem Basis Data 1
DATA MANIPULATION LANGUAGE
Structured query language (sql)
Pengantar Teknologi SIM 2 (pertemuan 7)
Transcript presentasi:

mapdb, injektor PDDIKTI Basit Adhi Prabowo oleh:

Tentang Penjelasan tentang penggunaan mapdb Tautan: https://pdsi.unisayogya.ac.id/tag/injector/ Sifat: Open Source Penulis Utama: Basit Adhi Prabowo, S.T. basit@unisayogya.ac.id

Bahasan Cek Tabel Ekstrak Sinkron Internal Filter Injek Injek Insert Update

Cek Tabel Apakah tabel sudah dipetakan Tabel Institusi kode nama field2 1 A X 2 B Y 3 C Z Tabel PDDIKTI kode nama 1 A 2 B 3 C 4 D pt_agama ok agama jurusan ak_programstudi belum dipetakan jabfung Sama? Cek Tabel Apakah tabel sudah dipetakan Apakah tabel referensi Institusi sudah sama dengan tabel referensi PDDIKTI (setidaknya nama dan kode-nya)

CEK TABEL 1 1 1 4 3 5 Membandingkan data tabel Institusi dengan data tabel PDDIKTI select guid, field2, field3, ... from A where <filterInstansi> order by `field1 (pk)` $this->GetRecordset(“P”) 1 2 3 4 5

Tabel Institusi kode GUID1 GUID2 Ekstrak d555e532-8dfa-490b-a30b-72ab03274475 944f5369-5183-4841-8543-c7610f1bebf4 1 Tabel PDDIKTI UUID1 UUID2 d555e532-8dfa-490b-a30b-72ab03274475 944f5369-5183-4841-8543-c7610f1bebf4 Ekstrak Memasukkan data dari tabel PDDIKTI ke tabel Institusi (tanpa update UUID/GUID)

EKSTRAK 5 4 5 4 6 7 3 1 2 Ambil data tabel PDDIKTI, kemudian dimasukkan ke tabel Institusi (jika belum ada) GetRecordset(“P”, <filtertahunakademik>) insert into A (guid, field2, field3, ...) select nilai[id], nilai[fieldb], nilai[fieldc], ... from A where not exists (select 1 from A where fieldInstitusi[0]=nilai[fieldPDDIKTI[0]] and ...) limit 0,1 1 2 3 4 5 3 3 6 7

Tabel Institusi nim namamahasiswa GUID 123456 Fulan 456789 John Doe Sinkron GUID d555e532-8dfa-490b-a30b-72ab03274475 944f5369-5183-4841-8543-c7610f1bebf4 Tabel PDDIKTI UUID nim namamahasiswa d555e532-8dfa-490b-a30b-72ab03274475 123456 Fulan 944f5369-5183-4841-8543-c7610f1bebf4 456789 John Doe Sinkron Proses menghubungkan 1 baris di tabel Institusi dengan 1 baris di tabel PDDIKTI melalui UUID/GUID primary key 1 baris data PDDIKTI tersebut

SINKRON 8 1 5 2 4 3 Langkah 1: check, ambil data tabel Institusi yang belum ada UUID/GUIDnya, kemudian dicari di tabel PDDIKTI select `field1 (pk)`,<fieldInstitusi>, <fieldtambahanInstitusi> from A a where `a.guid`="" or isnull(`a.guid`)) and <filterInstitusi> order by <fieldorderInstitusi> GetRecordset(“P”, <fieldPDDIKTI>=nilai[<fieldInstitusi>]) 1 2 3 4 5 5 6 7 8 9 2

SINKRON 4 3 2 1 Langkah 2: update guid, UUID/GUID yang didapat dari PDDIKTI disimpan ke Institusi update Aa set a.guid=nilai[`fielda (pk)`] where `field1 (pk)`=nilai[`field1 (pk)`] 1 2 3 4 4

Tabel Institusi nim namamahasiswa GUID 123456 Fulan Update GUID Injek d555e532-8dfa-490b-a30b-72ab03274475 Tabel PDDIKTI UUID nim namamahasiswa d555e532-8dfa-490b-a30b-72ab03274475 ID Baru 123456 Fulan Injek - Insert Proses memasukkan data dari tabel Institusi ke dalam tabel PDDIKTI, kemudian akan mendapatkan UUID/GUID primary key untuk setiap baris baru dan disimpan ke dalam tabel Institusi

INSERT INJEK 7 10 2 10 2 4 8 9 5 6 Tidak berlaku untuk internalfilter 3 1 Langkah 1: injek, ambil data tabel Institusi yang belum ada UUID/GUIDnya, kemudian dimasukkan ke tabel PDDIKTI select `field1 (pk)`, field2, field3, ..., <fieldtambahanInstitusi> from A a where a.<fieldtahunakademikInstitusi> = parameter["tahunakademik"] and isnull(guid) and <filterInstitusi> InsertRecord(“P”, array(“fieldb”=>nilai[field2], “fieldc”=>nilai[field3], ...)) 1 2 3 4 5 6 7 8 9 10 2 10 2

-: SAMA DENGAN LANGKAH 2 PROSES SINKRON :- INJEK INSERT 4 3 2 1 Langkah 2: update guid, UUID/GUID yang didapat dari PDDIKTI disimpan ke Institusi update Aa set a.guid=nilai[`fielda (pk)`] where `field1 (pk)`=nilai[`field1 (pk)`] 1 2 3 4 4 -: SAMA DENGAN LANGKAH 2 PROSES SINKRON :-

Tabel Institusi nim namamahasiswa GUID 123456 Joh Doe Update GUID Injek d555e532-8dfa-490b-a30b-72ab03274475 Tabel PDDIKTI UUID nim namamahasiswa d555e532-8dfa-490b-a30b-72ab03274475 123456 Fulan 123456 John Doe Berubah Injek - Update Proses memperbarui data dari tabel Institusi ke dalam tabel PDDIKTI, kemudian memasukkan ulang UUID/GUID primary key dari tabel PDDIKTI dalam tabel Institusi

UPDATE INJEK 8 11 11 5 9 10 6 7 3 Tidak berlaku untuk internalfilter 2 4 1 Langkah 1: injek, ambil data tabel Institusi yang belum ada UUID/GUIDnya, kemudian dimasukkan ke tabel PDDIKTI select `field1 (pk)`, <fieldwherePDDIKTI>, <fieldupdatePDDIKTI>, <fieldtambahanInstitusi> from A a where a.<fieldtahunakademikInstitusi> = parameter["tahunakademik"] and isnull(guid) and <filterInstitusi> UpdateRecord(“P”, array(“key”=>array(“fieldwherePDDIKTI[0]”=>nilai[field2], ...), “data”=>array(“fieldupdatePDDIKTI[0]”=>nilai[field2], ...)) 1 2 3 4 5 6 7 8 9 10 2 11 3 11

-: SAMA DENGAN LANGKAH 2 PROSES SINKRON :- INJEK UPDATE 4 3 2 1 Langkah 2: update guid, UUID/GUID yang didapat dari PDDIKTI disimpan ke Institusi update Aa set a.guid=nilai[`fielda (pk)`] where `field1 (pk)`=nilai[`field1 (pk)`] 1 2 3 4 4 -: SAMA DENGAN LANGKAH 2 PROSES SINKRON :-

select * from A a join B b on b.kd=a.kd where [internalfilter] select * from A a join B b on b.kd=a.kd where a.field1=0 a.field1=0 Internal Filter Membuat query sendiri dengan klausa where [internalfilter], tidak menggunakan mekanisme mapping

Terima Kasih