To jest prawdopodobnie pytanie podobne do n00bl (lub gorsze). Ale zawsze postrzegałem schemat jako definicję tabeli w bazie danych. To jest złe lub nie do końca poprawne. Niewiele pamiętam z kursów dotyczących baz danych.
database
schema
definition
database-table
anbanm
źródło
źródło
Odpowiedzi:
schemat : baza danych : tabela :: plan piętra : dom : pokój
źródło
Schematu relacja jest logiczną definicję tabeli - określa jaka nazwa tabeli jest i jaka jest nazwa i typ każdej kolumny jest. To jak plan lub plan. Schematu bazy danych to zbiór schematów relacji do całej bazy danych.
Stół jest konstrukcja z wieloma rzędami (znany jako „krotki”), z których każdy posiada cechy zdefiniowane w schemacie. Tabele mogą również zawierać indeksy, które ułatwiają wyszukiwanie wartości w określonych kolumnach.
Baza jest formalnie każdy zbiór danych. W tym kontekście baza danych byłaby zbiorem tabel. DBMS (Database Management System) to oprogramowanie (jak MySQL, SQL Server, Oracle, etc), który zarządza i prowadzi bazę danych.
źródło
W skrócie, schemat jest definicją całej bazy danych, a więc zawiera tabele, widoki, procedury składowane, indeksy, klucze podstawowe i obce itp.
źródło
Wykazano, że ten konkretny wpis dotyczy tylko Oracle, a definicja schematu zmienia się w kontekście innej bazy danych.
Prawdopodobnie coś w rodzaju wyszukania w wyszukiwarce, ale terminy FYI wydają się różnić w swoich definicjach, co jest najbardziej irytujące :)
W Oracle baza danych to baza danych. W głowie myśl o tym jako o plikach danych i dziennikach ponownego wykonania oraz rzeczywistej fizycznej obecności na dysku samej bazy danych (tj. Nie instancji)
Schemat jest w rzeczywistości użytkownikiem. Dokładniej jest to zestaw tabel / procs / indexes itp. Należących do użytkownika. Inny użytkownik ma inny schemat (tabele, które jest jego właścicielem), ale użytkownik może również zobaczyć wszystkie schematy, do których ma wybrane uprawnienia. Zatem baza danych może składać się z setek schematów, a każdy schemat z setek tabel. Możesz mieć tabele o tej samej nazwie w różnych schematach, które znajdują się w tej samej bazie danych.
Tabela to tabela, zestaw wierszy i kolumn zawierających dane i jest zawarta w schematach.
Na przykład definicje mogą się różnić w SQL Server. Nie jestem tego świadomy.
źródło
Schemat zachowuje się jak obiekt nadrzędny, jak widać w świecie OOP. więc to nie jest sama baza danych. może ten link się przyda.
Ale w MySQL te dwa są równoważne. Słowo kluczowe DATABASE lub DATABASES można zastąpić słowem SCHEMA lub SCHEMAS, gdziekolwiek się pojawi. Przykłady:
Dokumentacja MySQL
Terminy SCHEMAT & DATABASE są czymś zależnym od DBMS.
Tabela to zbiór elementów danych (wartości), które są zorganizowane w oparciu o model pionowych kolumn (które są określone przez ich nazwy) i poziomych rzędach. Baza danych zawiera jedną lub więcej (zwykle) tabel . Dane są przechowywane w tych tabelach. Tabele mogą być ze sobą powiązane ( patrz tutaj ).
źródło
Więcej o schematach:
W SQL 2005 schemat jest sposobem grupowania obiektów. Jest to pojemnik, do którego możesz wkładać przedmioty. Ludzie mogą posiadać ten obiekt. Możesz przyznać prawa do schematu.
W 2000 r. Schemat był odpowiednikiem użytkownika. Teraz się uwolnił i jest całkiem przydatny. Możesz wrzucić wszystkie procesy użytkownika w jednym schemacie, a procesy administratora w innym. Przyznaj EXECUTE odpowiedniemu użytkownikowi / roli, a skończysz przyznawanie EXECUTE na określone procedury. Miły.
Notacja kropkowa wyglądałaby następująco:
Server.Database.Schema.Object
lub
myserver01.Adventureworks.Accounting.Beans
źródło
A
Schema
to zbiór obiektów bazy danych, który zawiera również struktury logiczne. Zawiera nazwę użytkownika, który jest jej właścicielem. ZAdatabase
Może mieć dowolną liczbę Schema jest. Jedna tabela z bazy danych może występować w dwóch różnych schematach o tej samej nazwie. Użytkownik może wyświetlić dowolny schemat, do którego został przypisany, wybrać uprawnienie.źródło
Jak ładnie ujął MusiGenesis, w większości baz danych:
Ale w Oracle może być łatwiej pomyśleć o:
schemat: baza danych: tabela :: właściciel: dom: pokój
źródło
W przeciwieństwie do niektórych z powyższych odpowiedzi, oto moje rozumienie oparte na doświadczeniu z każdą z nich:
database/schema :: table
database :: (schema/namespace ::) table
database/schema/user :: (tablespace ::) table
Proszę poprawić mnie, czy obszary tabel są opcjonalne, czy nie w Oracle. Minęło dużo czasu, odkąd ich używałem.
źródło
W schemacie Oracle jest jeden użytkownik w jednej bazie danych, na przykład scott to jeden schemat w bazie danych orcl. W jednej bazie danych możemy mieć wiele schematów, takich jak scott
źródło
Baza danych zawiera jeden lub więcej nazwanych schematów, które z kolei zawierają tabele. Schematy zawierają również inne rodzaje nazwanych obiektów, w tym typy danych, funkcje i operatory. Ta sama nazwa obiektu może być używana w różnych schematach bez konfliktów; na przykład zarówno schema1, jak i myschema mogą zawierać tabele o nazwie mytable. W przeciwieństwie do baz danych schematy nie są sztywno oddzielone: użytkownik może uzyskać dostęp do obiektów w dowolnym schemacie w bazie danych, z którą jest połączony, jeśli ma do tego uprawnienia.
Istnieje kilka powodów, dla których warto używać schematów:
Umożliwienie wielu użytkownikom korzystania z jednej bazy danych bez wzajemnej ingerencji.
Organizowanie obiektów bazy danych w logiczne grupy w celu ułatwienia zarządzania nimi.
Aplikacje innych firm można umieszczać w oddzielnych schematach, aby nie kolidowały z nazwami innych obiektów.
Schematy są analogiczne do katalogów na poziomie systemu operacyjnego, z tą różnicą, że schematów nie można zagnieżdżać.
Oficjalną dokumentację można znaleźć pod adresem https://www.postgresql.org/docs/9.1/ddl-schemas.html
źródło
Schematy zawierają bazy danych.
Bazy danych są częścią schematu.
A więc schematy> bazy danych.
Schematy zawierają widoki, procedury składowane, bazy danych, wyzwalacze itp.
źródło
Schemat nie jest planem dla całej bazy danych. Jest to plan / kontener dla podzbioru obiektów (np. Tabel) w bazie danych.
Oznacza to, że możesz mieć wiele obiektów (np. Tabel) w jednej bazie danych, które niekoniecznie należą do tej samej kategorii funkcjonalnej. Możesz więc pogrupować je w różne schematy i nadać im różne uprawnienia dostępu użytkowników.
To powiedziawszy, nie jestem pewien, czy możesz mieć jedną tabelę w wielu schematach. Interfejs użytkownika Management Studio udostępnia listę rozwijaną umożliwiającą przypisanie schematu do tabeli, umożliwiając tym samym wybranie tylko jednego schematu. Myślę, że jeśli zrobisz to z TSQL, może utworzyć 2 (lub wiele) różnych obiektów z różnymi identyfikatorami obiektów.
źródło
Schemat bazy danych to sposób na logiczne grupowanie obiektów, takich jak tabele, widoki, procedury składowane itp. Pomyśl o schemacie jako o kontenerze obiektów. A tabele to zbiory wierszy i kolumn. połączenie wszystkich tabel tworzy bazę danych.
źródło