<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="pl">
	<id>http://brain.fuw.edu.pl/edu/index.php?action=history&amp;feed=atom&amp;title=%2FCw8</id>
	<title>/Cw8 - Historia wersji</title>
	<link rel="self" type="application/atom+xml" href="http://brain.fuw.edu.pl/edu/index.php?action=history&amp;feed=atom&amp;title=%2FCw8"/>
	<link rel="alternate" type="text/html" href="http://brain.fuw.edu.pl/edu/index.php?title=/Cw8&amp;action=history"/>
	<updated>2026-04-18T15:56:42Z</updated>
	<subtitle>Historia wersji tej strony wiki</subtitle>
	<generator>MediaWiki 1.34.1</generator>
	<entry>
		<id>http://brain.fuw.edu.pl/edu/index.php?title=/Cw8&amp;diff=2048&amp;oldid=prev</id>
		<title>Jarekz: Utworzono nową stronę &quot;= TI:WTBD/Ćwiczenia 8 =  * Kończyliśmy jeszcze temat z poprzednich ćwiczeń (szukanie importów w plikach z kodem w Pythonie za pomocą wyrażeń regularnych)  *...&quot;</title>
		<link rel="alternate" type="text/html" href="http://brain.fuw.edu.pl/edu/index.php?title=/Cw8&amp;diff=2048&amp;oldid=prev"/>
		<updated>2015-05-23T15:00:47Z</updated>

		<summary type="html">&lt;p&gt;Utworzono nową stronę &amp;quot;= &lt;a href=&quot;/edu/index.php/TI:WTBD&quot; title=&quot;TI:WTBD&quot;&gt;TI:WTBD&lt;/a&gt;/Ćwiczenia 8 =  * Kończyliśmy jeszcze temat z poprzednich ćwiczeń (szukanie importów w plikach z kodem w Pythonie za pomocą wyrażeń regularnych)  *...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Nowa strona&lt;/b&gt;&lt;/p&gt;&lt;div&gt;= [[TI:WTBD]]/Ćwiczenia 8 =&lt;br /&gt;
&lt;br /&gt;
* Kończyliśmy jeszcze temat z poprzednich ćwiczeń (szukanie importów w plikach z kodem w Pythonie za pomocą wyrażeń regularnych)&lt;br /&gt;
&lt;br /&gt;
* Wstęp do SQL w praktyce (SQLite): &lt;br /&gt;
** program ''sqlite3''&lt;br /&gt;
**:jest to proste narzędzie do operowania na bazach danych SQLite. SQLite jest systemem bazodanowym wbudowanym, tzn. wszystko odbywa się w ramach jednego procesu (a nie -- w dialogu z serwerem), a operacje na bazie danych zrealizowane są poprzez bibliotekę funkcji (z którą będziemy mieli do czynienia w postaci ,,opakowanej&amp;quot; w moduł pythonowy). Same bazy przyjmują postać zwykłych plików (w szczególnym formacie binarnym), każdy z nich zawiera pewien zbiór tabel (i ewent. innych obiektów, jak widoki, indeksy, triggery) tworzących ''bazę danych'' w sensie SQL.&lt;br /&gt;
** polecenia wbudowane (nie-SQLowe)&lt;br /&gt;
**:listę tych poleceń wraz z krótkimi opisami otrzymujemy pisząc w linii poleceń programu ''sqlite3'' polecenie ''.help''. Polecenia wbudowane '''nie''' są poleceniami SQL, nie są dostępne poza kontekstem programu ''sqlite3'', i nie rządzą się regułami składniowymi SQL -- w szczególności, obejmują tylko jedną linię ''nie'' zakończoną średnikiem.&lt;br /&gt;
** otwieramy bazę&lt;br /&gt;
**:otwarcie bazy za pomocą ''sqlite3'' polega na wywołaniu programu z argumentem będącym nazwą pliku zawierającego bazę:&lt;br /&gt;
    sqlite3 baza.db&lt;br /&gt;
** ustalamy jakie zawiera tabele i jak są zdefiniowane&lt;br /&gt;
**: w programie ''sqlite3'' piszemy&lt;br /&gt;
    .schema&lt;br /&gt;
    .schema ''nazwa_tabeli''&lt;br /&gt;
** dowiadujemy się, ile jest w nich danych (wierszy)&lt;br /&gt;
    select count(*) from ''nazwa_tabeli'';&lt;br /&gt;
** tworzymy proste zapytania (SELECT), np.&lt;br /&gt;
    select * from ''nazwa_tabeli'';&lt;br /&gt;
** przykłady zapytań z agregacją&lt;br /&gt;
    select KOD, count(*) from ''nazwa_tabeli'' group by KOD;&lt;/div&gt;</summary>
		<author><name>Jarekz</name></author>
		
	</entry>
</feed>