neljapäev, 27. aprill 2017

Neljapäev 27.04.2017

Tänased tunnid olid andmebaasirakenduste arendaja(x4) Väinoga.

Tegime kuskil 100 tekstifailis olevat kirjet sql lauseteks. Oli vaja teha et sisestada need tabelisse.
Selline ülesehitus :
insert into employees values(
103,'Alexander','Hunold','AHUNOLD','590.423.4567',
to_date('1990-01-03','yyyy-mm-dd'), to_date('1959-04-21','yyyy-mm-dd'), 'IT_PROG',9000,null,102,60);

ID, eesnimi, perenimi, telefon, mingi kuupäev, mingi kuupäev, tööosakond, palk , ei tea, ei tea, ei tea.

Mida õppisin: replace Notepadis on päris asjalik toode.

kolmapäev, 26. aprill 2017

Kolmapäev 26.04.2017

Tänased tunnid olid vene keel(x2) Tatjanaga.

Vene keeles tegime paar hindelist tööd ära.

teisipäev, 25. aprill 2017

Teisipäev 25.04.2017

Tänased tunnid olid andmebaasirakenduste arendaja(x4) Väinoga.

Tegelesime Oracle andmebaasidega.

esmaspäev, 24. aprill 2017

Esmaspäev 24.04.2017

Tänased tunnid olid andmebaasirakenduste arendaja(x3) Väinoga.

Jätkasime tööd oma andmebaasidega.

reede, 21. aprill 2017

Reede 21.04.2017

Tänased tunnid olid andmebaasirakenduste arendaja(x2) Väinoga.

Tegime uue kasutaja Oracle 11g keskkonda. Et tabelite loomisel kasutada PL/SQL'i, ei saanud kasutada SYSDBA kontot (andmebaasi admini kontot). Süsteemiturve võtab seda kui häkkimist. Seega oli vaja luua uus konto ning anda sellele vajalikud õigused. Siis sai kasutada PL/SQL'i. Sellega panime tabelile kellaajalised piirangud peale, aga need lülitasime välja.

Mida õppisin: kuidas lisada Oracle 11g veebiliidesega uut kasutajat.

neljapäev, 20. aprill 2017

Neljapäev 20.04.2017

Tänased tunnid olid andmebaasirakenduste arendaja Väinoga.

Jätkasime tööd oma tabelitega, aga me ei jõudnud neid valmis.

kolmapäev, 19. aprill 2017

Kolmapäev 19.04.2017

Tänased tunnid olid andmebaasirakenduste arendaja Väinoga ja vene keel Tatjanaga.

Tegime Oracle 11g andmebaasiga tööd. Sinna pidime lisama tabeleid. Siis pidi nende tabelite ülesehitust muutma. Seda tegime trigger'eid ning constraint'e kasutades. Ei jõudnud lõpuni.

Vene keeles õppisime vene keelt.

teisipäev, 18. aprill 2017

Teisipäev 18.04.2017

Tänased tunnid olid andmebaasirakenduste arendamine Väinoga.

Kui kasutad commit käsklust, saad tehtud asju tagasi kerida.

SQL käsud pole tõusutundlikud (case-sensitive)

Tingimused pannakse eraldi reale.
Tegime tööd APEX'is.
Peale seda tegime tööd Oracle 11g andmebaasiga.

esmaspäev, 17. aprill 2017

Esmaspäev 17.04.2017

Tänased tunnid olid andmebaasirakenduste arendaja Väinoga.

Süsteemitarkvara - OS
Rakendustarkvara - programmid
APEX - Oracle Application Express Practice environment

Tegime APEX keskkonnas SQL Commands liidesega tööd.

SQL - structured query language (sruktureeritud päringukeel)

andmebaasi objektid:
tabel: koosneb veergudest
vaade: piiratud tabeli ligipääs
jada: hoiab arvulisi väärtusi
indeks: päringute kiiruse parendamiseks

teisipäev, 11. aprill 2017

esmaspäev, 10. aprill 2017

Esmaspäev 10.04.2017

Tänased tunnid olid andmebaasirakenduste arendaja(x3) Väinoga.

Olem: 

  • info, mida saab jälgida
  • tavaliselt nimisõna
  • esitatakse ristkülikukujulise kastina 

Olemi tüübid:

  • peamine - eksisteerib iseseisvalt, nt klient; juhendaja
  • iseloomulik  - eksisteerib teise olemi tõttu; nt tellimus, kursus
  • vahepealine - eksisteerib kahe või rohkema olemi olemasolu tõttu; nt tellimuse objekt, kursusele registreerimine
Olemid ja nende esindajad
  • esindaja on nii klassi kui olemi esindaja
  • olemis on esindajad
http://www3.ntu.edu.sg/home/ehchua/programming/java/j3f_oopexercises.html

alamtüüp

  • pärib kõik omadused ja seosed supertüübilt
  • joonistatakse supertüübi sisse
  • võib omada alamtüüpe
bottom-up - üldistamine
top-down - eristamine

alamtüübi reeglid:
  1. kõikehõlmavad: 
  • iga ülemtüübi esindaja on ka alamtüübi esindaja
  • MUUD alamtüüp peaks olema, et kategoriseerida olemeid mis pole defineeritud mõne teise olemasoleva alamtüübi poolt
  1. mutually exclusive
atribuutide omadused:
  • olemi kastis ERD'l
  • nimed on ainsuses ning suure algustähega või väikeste tähtedega
omaduse klassifikatsioon:
  • kohustuslik (*)
  • mittekohustusltk (väike o)
liht-ja liitomadused:
  • lihtomadusel on ainult üks väärtus
  • mitmeväärtuselisel saab olla mitu väärtust, nt aadress
Barkeri märgistused:
  • ümarate nurkadega märgistus
  • olemi nimi üleval vasakus nurgas 
  • full caps
  • ainsuses
  • tuleb kirjutada nii, et kõik saaksid aru
  • seos saab olla ainult kahe olemi vahel
  • võib olla sama olemi seos
  • seosel on kaks perspektiivi
  • seose peal on nimi
Bachmani tähistus:
  • P on UID
  • F on välisvõti
  • seosejooned on nool (varesejalg), täidetud või tühi ring (katkend- ja pidev joon)



artificial unique identifier: id, mis me ise paneme / järjekorranumber

rekursiivne seos: iseendale viitav

seoste maatriks

ERDish:
  • EACH 
  • Entity A
  • OPTINALITY (must be/ may be)
  • RELATIONSHIP NAME
  • CARDINALITY (one and only one/one or many)
  • Entity B
Miks normaliseerida:
pole korduvaid andmeid
suurendab andmeterviklust ning disaini stabiilsust
vältida mittesobivust ja anomaaliaid

neljapäev, 6. aprill 2017

Neljapäev 06.04.2017

Tänased tunnid olid andmebaasirakenduste arendaja(x2) Väinoga ja hajusrakenduste alsued(x2) Triinuga.

Entity - table

attribute - column

Nimetamistavad: 
tabelinimi on olemi nimi mitmuses

UID: 

  • täiesti unikaalne ühe tabeli ulatuses
  • väärtus ei muutu eluea ulatuses


Primary key:
Eristab iga rida tabelis

liitprimaarvõti koosneb kahe või enama tulba kombinatsioonist
nt: panga number ja konto number

Seos:

  • peegeldab suhet kahe või enama olemi vahel
  • sellel on alati nimi
Välisvõti:
tulp või nende kombinatsioon mis viitab primaarvõtmele selles või teises tabelis.
Triinu tunnis jätkasin UnrealIRC konfiguartsioonifaili muutmist. Selle sain enam-vähem valmis, ainult mõningad võrguga seoses muutused tuleb failis veel teha. 

kolmapäev, 5. aprill 2017

Kolmapäev 05.04.2017

Tänased tunnid olid hajusrakenduste alused(x2) Triinuga ja hajusrakenduste alused(x2) Sirjega.

Tegime oma projekti jaoks eraldi resource pool'i VMWare keskkonnas. Sinna tegime 6 virtuaalmasinat: 2 veebiserveri jaoks, 2 andmebaasi jaoks ning 2 IRC teenuse jooksutamiseks. Igat tuli kaks tükki teha kuna nendele tuleb failover'iga backup teha. Tegin koos Ottiga tööd. Meie osa oli andmebaasiserver püsti panna.

teisipäev, 4. aprill 2017

Teisipäev 04.04.2017

Tänased tunnid olid kursusejuhataja tund(x1) Jaaniga, tarkvara arendusprotsess(x1) Airega ja hajusrakenduste arendaja(x2) Triinuga.

Jaani tund jäi ära. Aire tunnis täitsime töölehti. Triinu tunnis saime uue ülesande. Tuleb teha jututuba kolme erineva paarisserveriga.

esmaspäev, 3. aprill 2017

Esmaspäev 03.04.2017

Tänased tunnid olid andmebaasirakenduste arendaja(x3) Väinoga.

Dictionary sisaldab kõiki

Ärireeglid: kust andmebaasi vajadus tuleb

Kuidas ärireegleid kirjutada: SRS

Mida teevad ärireeglid:

  •  aitavad arendajal aru saada olemite seoseid ja piiranguid
  • aitab standardiseerimise protseduure mõista
  • peab olema lihtne ja kergesti arusaadav
  • peab olema pidevalt uuendatud


Normaliseerimise eesmärk:

  • korduvate andmete vältimine
  • salvestatavate andmete kooskõla
  • kergem muuta andmeid ja andmevorminguid
  • lihtsam andmeid sisestada ja kustutada
  • lihtsam andmeid turvata
Terviklus: tagab, et andmed õiged
andmed kooskõlas
saavutatakse normaliseerimise, määratud ärireeglite ning valideeritud andmete abil

Lame andmebaas:

eelised:
  • lihtne aru saada
  • lihtne teha
  • lihtne andmeid kätte saada
  • kõik kirjed ühes kohas
  • lihtne sorteerida ja filtreerida kirjeid
  • väikesed tark-ja riistvara nõuded

puudused:
  • turvamata
  • andmete ebakooskõlasus
  • andmete liiasus
  • raske jagada andmeid
  • suuremad andmebaasid on aeglased
relatiivse andmebaasi eelised:
  • vähem liiasust
  • väldib mitteühilduvust

consistency: kooskõlaslisus  -kõik andmed muutuvad igal pool samaaegselt

tabeli omadused:
  • veerus olevad kirjed on üheväärtuselised
  • veerus on sama tüüpi
  • iga rida on unikaalne
  • veergude järjekord pole tähtis
  • ridade järjestus pole tähtis
  • igal tulbal on unikaalne nimi
kontseptuuaalse modelleerimise eesmärk:
  • kui kujundad maja, tahaksid näha kuidas seda ehitatakse
  • isegi kui sa ei ehita maja, peaksid aru saama ehitajate nõuetest
  • andmebaasi konts. mudelit saab kasutada edasiseks arutamiseks disainerite, DBA ja rakeduste arendajate vahel
konts. mudel
  •  tuvastab kõrgema taseme seoseid erinevate olemite vahel
  • sisaldab seoseid olemite vahel, aga ei pruugi sisaldada mitmust ja nullitavust
  • ei määra primary key'd, aga määrab igale olemile unikaalse tuvastuse
konts. mudeli loomise sammud
  • tuvasta olemid
  • tuvasta omadused
  • tuvasta unikaalsed omadused
  • määra seosed
ERM eesmärgid:
  • vajaliku info kogumine
  • tagab, et info avaldub ainult korra
  • ei modelleerita infot korduvalt
  • paigaldada infot loogilisse, eeldatavatasse kohta