2009-07-14 12 views
4

Es ist mein Eindruck, dass Schemas hauptsächlich zum Organisieren der Tabellen, Ansicht, gespeicherten Prozeduren usw. in einer SQL Server-Datenbank dienen. Spielen Schemas eine größere Rolle (vielleicht in Bezug auf Datenbanksicherheit, Speicher usw.)?Verwendet für SQL Server-Schemas

Einige Klarstellung: Ich beziehe mich auf "Objekt" -Schemas. Entschuldigung für die Verwirrung.

Vielen Dank.

+2

Dies ist in der Nähe dieser Frage: http://stackoverflow.com/questions/529142/what-good-are-sql-server-schemas –

+0

Nicht sehr zufriedenstellende Antworten auf diese Frage. Mal sehen, was mit diesem passiert. –

+0

Keine Antwort @Robert Harvey, ich denke, Sie mischen Konzepte. Schema wie in der Beschreibung der Datenbankstrukturen gegenüber SQL Server-Schemaobjekten, die zum Gruppieren anderer Objekte (z. B. Tabellen) verwendet werden. – jvanderh

Antwort

3

prüfen Link http://technet.microsoft.com/en-us/library/dd283095.aspx. Es behandelt Sicherheitsaspekte im Abschnitt "Verwenden von Schemas in SQL Server".

prost

+0

Ok. Ich war nicht der Einzige, der die Frage anders verstanden hat. Meine Wette, darum geht es in der Frage. – jvanderh

+1

Sicherheit ist sicherlich ein Aspekt davon, aber eine logische Möglichkeit, die Objekte in einer Datenbank zu organisieren, ist eine andere. Ich habe an vielen Projekten mit Tausenden von Objekten (Procs, Tabellen, Ansichten) gearbeitet und deren Organisation in Schemata hat das Leben immer einfacher gemacht. –

-1

Aus einer OO-Perspektive könnte ein Datenbankschema als eine Klasse betrachtet werden; wobei die Datenbank selbst eine Objektinstanz dieser Klasse darstellt.

Die gleichen Auswirkungen gelten aus dieser Analogie (re: Sicherheit, Speichernutzung, etc)

+0

Er bezieht sich speziell auf das SCHEMA-Konstrukt in SQL Server, im Gegensatz zu dem, was man allgemein auf das Datenbankschema bezieht, was die Tabellenbeschreibungen und Einschränkungen bedeutet. –

+0

Ich würde denken, dass ein SQL Server-Datenbankobjektschema einem Namespace in OO ähnlicher ist. – jvanderh

+1

Ich bevorzuge es, OO so weit wie möglich von SQL fern zu halten, danke. – Eric

3

Schemen erlauben Ihnen, Ihre Tabellen für die Sicherheit und/oder konzeptuelle geistige Gesundheit. Die Gruppe könnte eine Abteilung, ein bestimmter Bereich einer Anwendung, eine Active Directory-Gruppe, eine Datenbankrolle usw. sein.

Wenn Sie eine Gruppe von Tabellen haben, auf die nur Ihre HR-Sicherheitsgruppe zugreifen muss, können Sie sie unter HR erstellen Schema und erzwinge die Privilegien von dort.

Wenn Sie eine Anwendung haben, können Sie Schemas für Vertrieb, Inhalt und Produkte erstellen, um die Teile der Anwendung zu trennen.

Verwandte Themen