Typy danych cz.2
Reprezentacja danych logicznych
SQL nie ma specjalnego typu do przechowywania danych logicznych. Taki typ miałby dwie możliwe wartości true i false. Do wartości logicznych można by użyć jednocyfrowej liczby całkowitej. Normalnie byłoby wtedy możliwe przechowywanie liczb od -9 do +9. Używając ograniczenia sprawdzającego CHECK, zakres dopuszczalnych wartości można jednak ograniczyć do 1 jako true i 2 jako false. Jednak użycie 1 jako true i 0 jako false ma tę zaletę, że pozwala użyć formuł matematycznych zapewniających obsługę podobną do tworzenia wyrażeń warunkowych na kolumnach. W takim przypadku zamiast operatora AND stosujemy mnożenie *, a zamiast operatora OR – dodawanie +.
Daty i określenia czasu – typ DATE
Do reprezentacji dat i czasu Oracle używa jednego typu danych – DATE, który obejmuje okres od pierwszego stycznia 4712 p.n.e. do 31 grudnia 4712 n.e. Kolumna typu DATE może przechowywać czas z dokładnością do sekund. Typ DATE jest całkiem uniwersalny: obsługuje dodawanie i odejmowanie okresów czasu od/do wskazanej daty. Pozwala w ten sposób określić dzień tygodnia i miesiąc roku dla wskazanej daty. Obsługiwane są także zagadnienia związane ze strefami czasowymi Ziemi. Kolumny typu DATE działają na bazie dni. Dodanie 1 do daty zwróci datę o jeden dzień większą, zaś 7 zwróci datę o tydzień późniejszą. Czas w ramach jednego dnia jest przedstawiany jako ułamek dnia. Wobec tego 12 godzin to połowa, 1/24 to godzina, 1 minuta to 1/1440, a 1 sekunda – 1/86400.
Add comment lipiec 2, 2009
Typy danych
Typy danych w języku SQL ( Oracle)
Podobnie jak większość języków programowania, także SQL obsługuje wiele różnych typów danych w celu efektywnego przechowywania napisów stałej i zmiennej długości, liczb całkowitych, zmiennoprzecinkowych, dat oraz danych binarnych.
Typy danych łańcuchowych
Typ danych CHAR() pozwala przechowywać napisy o zadanej długości, od 1 do 255 znaków. Długością domyślną jest 1 znak – brak podania po nazwie typu nawiasów z wartością długości napisów również oznacza napisy długości jeden. Jeśli napis jest krótszy niż założona długość kolumny, brakująca część napisu jest uzupełniana spacjami. Innym słowy, SQL zawsze wymusza wpisanie ciągu znakowego odpowiadającego z ustawionym wymiarem kolumny typu CHAR.
Add comment lipiec 1, 2009
Przykładowe zapytania SQL
Są to przykładowe zapytania do baz Access. Najlepiej jeśli pobierzesz plik z bazą i odpalisz w Accessie, będzie ci łatwiej w nauce
- Wybrać osoby aktualnie pracujące uporządkowane według atrybutów płeć i nazwisko oraz wyświetlić w postaci
SELECT nazwisko + ‘ ‘ + imie1 as dane,Switch(plec=’K',’kobieta’,plec=’M',’mężczyzna’) as płeć
FROM osoby o INNER JOIN zatrudnienia z ON o.id=z.id_os
WHERE z.do is null
ORDER BY nazwisko, plec;
- Wyznaczyć średnią ilość dni pracy aktualnych pracowników na poszczególnych wydziałach i wyświetlić w postaci
SELECT nazwa, avg(date()-z.od) as średnia
FROM wydzialy w INNER JOIN zatrudnienia z ON w.id = z.id_wydz
WHERE z.do is null
GROUP BY nazwa;
1 comment listopad 17, 2008
Podstawy z baz ciąg dalszy …
Termin informacja przyjmujemy jako aksjomat, czyli jest to pojęcie niedefiniowalne (z uwagi na kłopot, którym byłoby objęcie jakąś definicją, tak różnorodnych informacji). Należy podkreślić jednak pewną cechę informacji związaną z ich strukturą. A mianowicie wyróżniamy informacje, których nie można lub nie należy w danym kontekście rozkładać na informacje prostsze – są to tzw. informacje proste (atomowe, skalarne) oraz informacje składające się z więcej niż jednej informacji prostej – są to tzw. informacje złożone (zaagregowane).
Przykład: ciśnienie atmosferyczne, temperatura powietrza, mierzone w konkretnym miejscu i w konkretnym dniu są przykładami informacji atomowych, choć co do dat można się spierać, bo można je realizować na rok, miesiąc i dzień. Informacje te wspólnie tworzą informację złożoną, dotyczą warunków atmosferycznych dla danego miejsca w konkretnym dniu. Informacją zaagregowaną w jeszcze większym stopniu byłby pomiar tych czynników atmosferycznych dla wielu dni, miesięcy, lat, czy wielu miejscowości.
Uwaga: Choć daty nie spełniają definicji informacji prostej to w ogromnej większości systemów bazodanowych uważa się je za informacje atomowe.
(więcej…)
2 comments listopad 17, 2008
Model danych
Model danych można zdefiniować jako spójny zestaw pojęć, który służy do opisywania danych i związków pomiędzy nimi oraz manipulowania danymi (przekształcania danych) i ich związkami, a także do wyrażania więzów nałożonych na dane w pewnym świecie modelowanym.
Model jest zatem pewną reprezentacją wziętych ze świata rzeczywistego obiektów, zdarzeń i powiązań między nimi. Jest zatem abstrakcją, która koncentruje się na istotnych, swoistych aspektach pewnego fragmentu rzeczywistości, a pomija elementy przypadkowe. Z tego powodu model danych musi dostarczyć pojęć i oznaczeń, które pozwolą projektantom baz danych i późniejszym ich użytkownikom na jednoznaczne i precyzyjne przekazywanie własnego sposobu widzenia danych danego fragmentu rzeczywistości. (więcej…)
Add comment listopad 11, 2008
Trochę praktyki z SQL
Instrukcja SELECT
SELECT imie1 AS [pierwsze imie], imie2 AS [drugie imie] FROM osoba;
Predykat – all lub distinct
SELECT all imie1 AS [pierwsze imie] FROM osoba;
Distinct – wyświetla unikalne wpisy, nie wyświetla duplikatów
All – domyślny wyświetla wszystko
Top – wyświetla żądano wartość wierszy
SELECT top 4 * FROM osoba;
ORDER BY – sortowanie
SELECT top 4 * FROM osoba ORDER BY id;
SELECT top 4 * FROM osoba ORDER BY id asc;
SELECT top 4 * FROM osoba ORDER BY id desc; – w porządku odwrotnym
SELECT top 4 percent * FROM osoba;
SELECT top 50 percent * FROM osoba; – ile procent ma się wyświetlić (więcej…)
Add comment listopad 4, 2008
Proces projektowania baz danych
Z punktu widzenia projektanta baz danych, proces projektowania składa się z:
- Wyselekcjonowania typów informacji, potrzebnych przyszłym użytkownikom projektowanej bazy,
- Zapisanie ich w ustrukturalizowanej formie, akceptowanej przez komputer
- Wprowadzenia do komputera (do bazy) konkretnych danych odzwierciedlających aktualny stan świata modelowanego.
Etap I – nazywa się “konceptualizacją” świata zewnętrznego.
Etap II – odnosi się do stworzenia tzw. schematu bazy danych, czyli zapisania “skonceptualizowanego” wycinka rzeczywistości w pewnym języku narzuconym przez komputer (System Zarządzania Bazą Danych – SZBD).
Etap III – zwykle poprzedzony pewnymi operacjami wykonywanymi na schemacie danych przez komputer (SZBD) w celu utworzenia pewnych struktur fizycznych dotyczących tego schematu, dotyczy założenia bazy danych (wpisanie schematu baz danych do komputera – SZBD). (więcej…)
2 comments listopad 3, 2008
Definicja bazy danych
Aktualnie uważa się, że zasadniczymi kwestiami związanymi z bazami danych są:
- Problemy modelowania i reprezentacji danych,
- Zapewnienie wiarygodności i spójności danych, szczególnie w kontekście aktualizowania danych,
- Języki wyszukiwania/przetwarzania dla różnych typów danych (np. tekstowe, dźwiękowe, przestrzenne, itd.),
- Ochrona danych,
- Komunikacja człowieka z komputerami przechowującymi dane,
- Poszukiwanie nowych komputerów zorganizowanych na przetwarzanie danych
Definicja bazy danych, modelu danych i schematu baz danych
Bazą danych nazywamy model pewnego wycinka rzeczywistości (niekoniecznie fizycznie istniejącego), który jest w orbicie zainteresowań przyszłych użytkowników. (więcej…)
1 comment listopad 1, 2008
Relacyny model danych
Za twórcę relacyjnego modelu danych uważa się E. F. Codda, zaś rok w którym powstał model
relacyjny to rok 1970.
Model relacyjny danych definiuje:
- sposób reprezentowania danych (strukturę);
- metodę ich zabezpieczania (integralność danych);
- operacje, które mogą być wykonywane na danych (manipulowanie danymi)
W pewnym uproszczeniu relacyjną bazą danych definiujemy jako:
1 comment listopad 1, 2008
Co to jest SQL?
SQL (ang. Structured Query Language wym.) – strukturalny język zapytań używany do tworzenia, modyfikowania baz danych oraz do umieszczania i pobierania danych z baz danych.
Język SQL jest językiem deklaratywnym. Decyzję o sposobie przechowywania i pobrania danych pozostawia się systemowi zarządzania bazą danych (DBMS).
źródło: pl.wikipedia.org
Add comment listopad 1, 2008


