Relacyjne bazy danych, normalizacja i SQL

Baza danych to aplikacja, która może bardzo szybko przechowywać i pobierać dane. Bit relacyjny odnosi się do sposobu przechowywania danych w bazie danych i sposobu ich organizacji. Kiedy mówimy o bazie danych, mamy na myśli relacyjną bazę danych, w rzeczywistości RDBMS: Relacyjny system zarządzania bazą danych.

W relacyjnej bazie danych wszystkie dane są przechowywane w tabelach. Mają one tę samą strukturę powtarzaną w każdym rzędzie (jak arkusz kalkulacyjny), a relacje między tabelami sprawiają, że jest to tabela „relacyjna”.

Przed wynalezieniem relacyjnych baz danych (w latach siedemdziesiątych) stosowano inne typy baz danych, takie jak hierarchiczne bazy danych. Jednak relacyjne bazy danych okazały się bardzo skuteczne dla firm takich jak Oracle, IBM i Microsoft. Świat open source ma również RDBMS.

Komercyjne bazy danych

  • Wyrocznia
  • IBM DB 2
  • Microsoft SQL Server
  • Ingres. Pierwszy komercyjny RDBMS.

Darmowe / otwarte bazy danych

  • MySQL
  • PostgresSQL
  • SQLite

Ściśle nie są to relacyjne bazy danych, ale RDBMS. Zapewniają bezpieczeństwo, szyfrowanie, dostęp użytkownika i mogą przetwarzać zapytania SQL.

instagram viewer

Kim był Ted Codd?

Codd był informatykiem, który opracował prawa normalizacji w 1970 roku. Był to matematyczny sposób opisywania właściwości relacyjnej bazy danych za pomocą tabel. Wymyślił 12 praw opisujących działanie relacyjnej bazy danych i RDBMS oraz kilka praw normalizacyjnych opisujących właściwości danych relacyjnych. Tylko dane, które zostały znormalizowane, można uznać za relacyjne.

Co to jest normalizacja?

Rozważ arkusz kalkulacyjny z rekordami klientów, który ma zostać umieszczony w relacyjnej bazie danych. Niektórzy klienci mają te same informacje, na przykład różne oddziały tej samej firmy z tym samym adresem rozliczeniowym. W arkuszu kalkulacyjnym ten adres znajduje się w wielu wierszach.

Podczas przekształcania arkusza kalkulacyjnego w tabelę wszystkie adresy tekstowe klienta należy przenieść do innej tabeli i przypisać każdemu z nich unikalny identyfikator- powiedzieć wartości 0,1,2. Te wartości są przechowywane w głównej tabeli klienta, więc wszystkie wiersze używają identyfikatora, a nie tekstu. Instrukcja SQL może wyodrębnić tekst dla danego identyfikatora.

Co to jest stół?

Pomyśl o tym jak o prostokątnym arkuszu kalkulacyjnym złożonym z rzędów i kolumn. Każda kolumna określa rodzaj danych przechowywane (liczby, ciągi lub dane binarne - takie jak obrazy).

W przeciwieństwie do arkusza kalkulacyjnego, w którym użytkownik może mieć różne dane w każdym wierszu, w tabeli bazy danych każdy wiersz może zawierać tylko określone typy danych.

W C i C ++ jest to jak szyk z structs, gdzie jedna struktura przechowuje dane dla jednego wiersza.

  • Aby uzyskać więcej informacji, zobacz Normalizowanie bazy danych w części Projektowanie bazy danych database.about.com.

Jakie są różne sposoby przechowywania danych w bazie danych?

Istnieją dwa sposoby:

  • Za pośrednictwem serwera bazy danych.
  • Poprzez plik bazy danych.

Korzystanie z pliku bazy danych to starsza metoda, bardziej odpowiednia dla aplikacji komputerowych. NA PRZYKŁAD. Microsoft Access, choć jest on stopniowo wycofywany na korzyść Microsoft SQL Server. SQLite to doskonała baza danych domeny publicznej napisana w C, która przechowuje dane w jednym pliku. Istnieją opakowania dla C, C ++, DO# i inne języki.

Baza danych serwer to aplikacja serwera działająca lokalnie lub na komputerze w sieci. Większość dużych baz danych oparta jest na serwerze. Zajmują więcej administracji, ale zwykle są szybsze i bardziej niezawodne.

Jak aplikacja komunikuje się z serwerami baz danych?

Zasadniczo wymagają one następujących szczegółów.

  • Adres IP lub nazwa domeny serwera. Jeśli jest na tym samym komputerze co Ty, użyj 127.0.0.1 lub Lokalny Gospodarz jak nazwa dns.
  • Port serwera W przypadku MySQL jest to zwykle 3306, 1433 dla Microsoft SQL Server.
  • Nazwa użytkownika i hasło
  • Nazwa bazy danych

Istnieje wiele aplikacji klienckich, które mogą komunikować się z serwerem bazy danych. Microsoft SQL Server ma Enterprise Manager do tworzenia baz danych, ustawiania zabezpieczeń, uruchamiania zadań konserwacyjnych, zapytań oraz oczywiście projektowania i modyfikowania tabel baz danych.

Co to jest SQL?:

SQL jest skrótem od Structured Query Language i jest prostym językiem, który zawiera instrukcje dotyczące budowania i modyfikowania struktury baz danych oraz modyfikowania danych przechowywanych w tabelach. Główne polecenia używane do modyfikowania i pobierania danych to:

  • Wybierz - Pobiera dane.
  • Wstawić - Wstawia jeden lub więcej wierszy danych.
  • Aktualizacja - Modyfikuje istniejące wiersze danych
  • Usunąć - Usuwa wiersze danych.

Istnieje kilka norm ANSI / ISO, takich jak ANSI 92, jeden z najpopularniejszych. Określa minimalny podzbiór obsługiwanych instrukcji. Większość dostawców kompilatorów obsługuje te standardy.

Wniosek

Każda nietrywialna aplikacja może korzystać z bazy danych, a baza danych oparta na SQL jest dobrym miejscem do rozpoczęcia. Po opanowaniu konfiguracji i administrowania bazą danych musisz nauczyć się języka SQL, aby działał poprawnie.

Zadziwiająca jest szybkość, z jaką baza danych może pobierać dane, a nowoczesne RDBMS to złożone i wysoce zoptymalizowane aplikacje.

Bazy danych typu open source, takie jak MySQL, szybko zbliżają się do potęgi i użyteczności komercyjnych rywali i prowadzą wiele baz danych na stronach internetowych.

Jak połączyć się z bazą danych w systemie Windows za pomocą ADO

Programowo istnieją różne interfejsy API, które zapewniają dostęp do serwerów baz danych. W systemie Windows są to ODBC i Microsoft ADO. [h3 [Korzystanie z ADO Tak długo, jak istnieje oprogramowanie dostawcy, które łączy bazę danych z ADO, dostęp do bazy danych jest możliwy. System Windows od 2000 ma to wbudowane.

Spróbuj wykonać następujące czynności. Powinien działać w systemie Windows XP i Windows 2000, jeśli kiedykolwiek zainstalowałeś MDAC. Jeśli nie chcesz i chcesz to wypróbować, odwiedź Microsoft.com, wyszukaj „MDAC Download” i pobierz dowolną wersję 2.6 lub nowszą.

Utwórz pusty plik o nazwie test.udl. Kliknij plik prawym przyciskiem myszy w Eksploratorze Windows i zrób „otwórz za pomocą”, powinieneś zobaczyć Microsoft Data Access - podstawowe usługi OLE DB ”. To okno dialogowe pozwala połączyć się z dowolną bazą danych z zainstalowanym dostawcą, nawet z arkuszami kalkulacyjnymi!

Wybierz pierwszą kartę (Dostawca), ponieważ otwiera się domyślnie na karcie Połączenie. Wybierz dostawcę, a następnie kliknij Dalej. Nazwa źródła danych pokazuje różne typy dostępnych urządzeń. Po wpisaniu nazwy użytkownika i hasła kliknij przycisk „Testuj połączenie”. Po naciśnięciu przycisku OK możesz otworzyć plik test.udl z plikiem za pomocą Wordpada. Powinien zawierać taki tekst.

 [oledb]
; Wszystko po tej linii jest inicjowaniem OLE DB
Dostawca = SQLOLEDB.1; Zachowaj informacje o bezpieczeństwie = Fałsz; ID użytkownika = sa; Początkowy katalog = dhbtest; Źródło danych = 127.0.0.1

Trzeci wiersz jest ważny, zawiera szczegóły konfiguracji. Jeśli baza danych ma hasło, zostanie wyświetlone tutaj, więc nie jest to bezpieczna metoda! Ten ciąg może być wbudowany w aplikacje korzystające z ADO i pozwoli im połączyć się z określoną bazą danych.

Korzystanie z ODBC

ODBC (Open Database Connectivity) zapewnia interfejs oparty na API do baz danych. Dostępne są sterowniki ODBC dla niemal każdej istniejącej bazy danych. ODBC zapewnia jednak kolejną warstwę komunikacji między aplikacją a bazą danych, co może powodować obniżenie wydajności.