<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
		<id>https://strudel.pld.ttu.ee/wiki/e/index.php?action=history&amp;feed=atom&amp;title=IAG0582_-_Programmeerimine_II_%282014%29</id>
		<title>IAG0582 - Programmeerimine II (2014) - Revision history</title>
		<link rel="self" type="application/atom+xml" href="https://strudel.pld.ttu.ee/wiki/e/index.php?action=history&amp;feed=atom&amp;title=IAG0582_-_Programmeerimine_II_%282014%29"/>
		<link rel="alternate" type="text/html" href="https://strudel.pld.ttu.ee/wiki/e/index.php?title=IAG0582_-_Programmeerimine_II_(2014)&amp;action=history"/>
		<updated>2026-04-19T18:53:58Z</updated>
		<subtitle>Revision history for this page on the wiki</subtitle>
		<generator>MediaWiki 1.26.4</generator>

	<entry>
		<id>https://strudel.pld.ttu.ee/wiki/e/index.php?title=IAG0582_-_Programmeerimine_II_(2014)&amp;diff=2082&amp;oldid=prev</id>
		<title>Hkinks: Created page with &quot;==3. Kodune ülesanne== ===Andmebaasi ülesanne=== * Antud ülesande kaal on 10p eksamil ja see võib olla asendatud harjutustunni õppejõu poolt mingi teise ülesandega. * E...&quot;</title>
		<link rel="alternate" type="text/html" href="https://strudel.pld.ttu.ee/wiki/e/index.php?title=IAG0582_-_Programmeerimine_II_(2014)&amp;diff=2082&amp;oldid=prev"/>
				<updated>2015-04-02T10:26:40Z</updated>
		
		<summary type="html">&lt;p&gt;Created page with &amp;quot;==3. Kodune ülesanne== ===Andmebaasi ülesanne=== * Antud ülesande kaal on 10p eksamil ja see võib olla asendatud harjutustunni õppejõu poolt mingi teise ülesandega. * E...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;==3. Kodune ülesanne==&lt;br /&gt;
===Andmebaasi ülesanne===&lt;br /&gt;
* Antud ülesande kaal on 10p eksamil ja see võib olla asendatud harjutustunni õppejõu poolt mingi teise ülesandega.&lt;br /&gt;
* Ette on antud olemasolev PostgreSQL andmebaas, mis sisaldab Eesti jõgede andmeid.  &lt;br /&gt;
 Host: ewis.pld.ttu.ee&lt;br /&gt;
 Andmebaas: ablid &lt;br /&gt;
 Port: 5432&lt;br /&gt;
 Kasutaja: student&lt;br /&gt;
 Parool: iag0582&lt;br /&gt;
* Andmestruktuur&lt;br /&gt;
[[File:Joe andmed strukt.png]]&lt;br /&gt;
* [http://www.postgresql.org/docs/9.1/interactive/index.html PostgreSQL dokumentatsioon]&lt;br /&gt;
* Ülesannet võib lahendada meelepärases programmeerimiskeeles. C kohta on olemas näidiskood ja põhjalikum juhis kompileerimiseks. Java puhul on toodud samuti näidisprogramm, kuid ülejäänud keelte puhul tuleks PostgreSQL andmebaasiga ühenduse loomine iseseisvalt selgeks teha.&lt;br /&gt;
* Teemat puudutav tunniülesanne: [http://ati.ttu.ee/wiki/images/Db_lesson_est.pdf EST]|[http://ati.ttu.ee/~hkinks/iag0582/db_lesson.pdf ENG]&lt;br /&gt;
====Näidiskood====&lt;br /&gt;
'''C'''&lt;br /&gt;
&lt;br /&gt;
[http://www.pld.ttu.ee/~hkinks/iag0582/psql.c Näidiskood] - loob ühenduse eelnimetatud PostgreSQL andmebaasiga ja pärib 10 esimest kirjet.&lt;br /&gt;
&lt;br /&gt;
Kompileerida on kõige lihtsam kasutades TTÜ klassiarvuteid, kus on PostgreSQL eelnevalt paigaldatud.&lt;br /&gt;
[http://ati.ttu.ee/wiki/index.php/Arvutiklassis_t%C3%B6%C3%B6tamise_juhend#Ligip.C3.A4.C3.A4s_v.C3.A4ljastpoolt_.C3.BClikooli_sisev.C3.B5rke Põhjalikum juhend väljastpoolt sisevõrku töötamiseks]&lt;br /&gt;
&lt;br /&gt;
Üks viis Windowsi alt klassiarvutitesse ühenduda on järgmine:&lt;br /&gt;
*Alla laadida endale [http://the.earth.li/~sgtatham/putty/latest/x86/putty.exe Putty]. &lt;br /&gt;
*Putty käivitamisel tuleks ''Host Name'' lahtrisse kirjutada '''proksi.intra.ttu.ee''' ning vajutada ''Open''. &lt;br /&gt;
*Esmakordsel ühendamisel tekib dialoogaken &amp;quot;PuTTy Security Alert&amp;quot;, millele võib vastata ''Yes''. &lt;br /&gt;
*Avaneb terminaliaken, kus küsitakse kasutajanime. Kasutajanimeks on '''Eesnimi.Perenimi@INTRA'''. (Kui mingil põhjusel INTRA domeenis parool puudub, siis https://pass.ttu.ee/ on võimalik ID kaardiga sisse logida ja parool tekitada. Või kui ka ID-kaart puudub, sisse logimiseks ka sõbra kasutajat kasutada.) &lt;br /&gt;
*Peale kasutaja sisestamist vajutada ''Enter'', sisestada parool (trükitud tähemärke ei kuvata tärnidena).&lt;br /&gt;
*Kui taaskord küsitakse &amp;quot;Are you sure you want to continue connecting?&amp;quot;, trükkida ''yes''.&lt;br /&gt;
*Kui sisselogimine õnnestus, tuleks teha järgmine ühendus läbi SSH ühte ICT-502 klassiarvutitest, mis on parasjagu Linuxis. Klassiarvutite staatust on näha aadressil http://ati.ttu.ee/klassi-staatus/. Kui sobiv arvuti on leitud, siis SSH ühenduse loomiseks kasutada järgnevat käsku, &lt;br /&gt;
kus lx22 asemel on mistahes soovitud arvuti alias.&lt;br /&gt;
 ssh -l Eesnimi.Perenimi@INTRA lx22&lt;br /&gt;
*Seejärel on võimalik tööd alustada. Näitekoodi allalaadimiseks terminalis võib kasutada käsku &lt;br /&gt;
 wget http://ati.ttu.ee/~hkinks/iag0582/psql.c&lt;br /&gt;
*Tekstiredaktorina võib kasutada näiteks '''nano''' või '''vim''',(kasutusjuhend käsuga '''man nano/vim''').&lt;br /&gt;
*Lähtekoodi kompileerimiseks kasutada käsku:&lt;br /&gt;
 gcc psql.c -lpq&lt;br /&gt;
*Programmi käivitamiseks kasutada käsku '''./&amp;lt;nimi&amp;gt;''', kui programm asub samas kaustas. Näiteks:&lt;br /&gt;
 ./a.out&lt;br /&gt;
*Kui juhtub, et programmi pole muul moel võimalik sulgeda, siis sundimaks programmi oma tööd lõpetama, kasutada klahvikombinatsiooni Ctrl+C.&lt;br /&gt;
*[http://ati.ttu.ee/wiki/index.php/Arvutiklassis_t%C3%B6%C3%B6tamise_juhend#Lihtsamad_UNIX-i_k.C3.A4sud Lihtsamad Linuxi terminali käsud]&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|[[File:Putty.png|200px|thumb|left|Putty kasutamine]]&lt;br /&gt;
|[[File:Helikopter.png|200px|thumb|left|Sisse logimine]]&lt;br /&gt;
|[[File:Ssh klassiarvutisse.png|200px|thumb|left|Klassiarvutisse ühendamine]]&lt;br /&gt;
|[[File:Kompileerimine.png|200px|thumb|left|Näidiskoodi kompileerimine]]&lt;br /&gt;
|}&lt;br /&gt;
PostgreSQL C API dokumentatsioon&lt;br /&gt;
&lt;br /&gt;
http://www.postgresql.org/docs/9.1/static/libpq.html&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Java'''&lt;br /&gt;
* [http://www.pld.ttu.ee/~hkinks/iag0582/java_example.zip Näidiskood] - pärib andmebaasist jõed ja moodustab neist jõgede hierarhia.&lt;br /&gt;
* [https://echo360.e-ope.ee/ess/echo/presentation/4da95ddb-004c-4b12-bd6c-8000af5d526a?ec=true Teemat puudutav videoloeng eelmisest aastast] (Ülesanded muutunud)&lt;br /&gt;
&lt;br /&gt;
====Ülesanded====&lt;br /&gt;
Veendumaks, et ühendus andmebaasiga on olemas, võib teha päringu ''SELECT * FROM joe_andmed LIMIT 10;''&lt;br /&gt;
, mis peaks väljastama 10 esimest kirjet tabelist ''joe_andmed''.&lt;br /&gt;
&lt;br /&gt;
1. Pärida jõed, mille ''tyyp'' väli vastab matrikli viimasele numbrile.&lt;br /&gt;
&lt;br /&gt;
2. Pärida seirejaamad, mis paiknevad eelmises punktis leitud jõgedel. (JOIN)&lt;br /&gt;
&lt;br /&gt;
3. Sorteerida tulemus jõgede pikkuse järgi.&lt;br /&gt;
&lt;br /&gt;
4. Lugeda valgla pindala väärtused (''valgla_km2'') programmi sisse ja leida nende kogusumma.&lt;br /&gt;
&lt;br /&gt;
5. Kirjutada tekstifaili punktis 4 saadud tulemus, mis sisaldaks järgmiseid väljasid: id_jogi, joenimi, tyyp, pikkus_km, id_jaam, jaama_nimi, valgla_km2. Lõppu lisada leitud valglate kogusumma.&lt;br /&gt;
&lt;br /&gt;
Lahenduseks olev programm koos lähtekoodiga, mis väljastab tekstifaili tulemusega, saata '''vladimir.viies@gmail.com''' .&lt;/div&gt;</summary>
		<author><name>Hkinks</name></author>	</entry>

	</feed>