Sie sind hier:
Wissen
Telefon (Mo-Fr 9 bis 16 Uhr):
0201/649590-0
|
Kontaktformular
MENU
Medien
Übersicht
Lexikon/Glossar
Spickzettel
Weblog
Konferenzvorträge
Fachbücher
Fachartikel
Leserportal
Autoren gesucht!
Literaturtipps
Praxisnahe Fallbeispiele
Downloads
Newsletter
.NET
Startseite
.NET 8.0
.NET 7.0
.NET 6.0
.NET 5.0
.NET Core
.NET 4.0/4.5.x/4.6.x
.NET 3.0/3.5
.NET 2.0
.NET-Lexikon
Programmiersprachen
Entwicklerwerkzeuge
Klassenreferenz
Softwarekomponenten
Windows Runtime
World Wide Wings-Demo
Versionsgeschichte
Codebeispiele
ASP.NET
Artikel
Bücher
Schulung & Beratung
Konferenzen/Events
ASP.NET
Startseite
Lexikon
Sicherheit
Konfiguration
Global.asax
Tracing
Technische Beiträge
Klassenreferenz
Programmiersprachen
Entwicklerwerkzeuge
Softwarekomponenten
Forum
Schulung & Beratung
PowerShell
Startseite
Commandlet-Referenz
Codebeispiele
Commandlet Extensions
Versionsgeschichte
Schulungen+Beratung
Windows
Startseite
Windows Runtime (WinRT)
Windows PowerShell
Windows Scripting
Windows-Schulungen
Windows-Lexikon
Windows-Forum
Scripting
Startseite
Lexikon
FAQ
Bücher
Architektur
Skriptsprachen
Scripting-Hosts
Scripting-Komponenten
COM/DCOM/COM+
ADSI
WMI
WMI-Klassenreferenz
Scripting-Tools
WSH-Editoren
Codebeispiele
.NET-Scripting
Forum
Schulung & Beratung
Nutzer
Anmeldung/Login
Buchleser-Registrierung
Gast-Registrierung
Hilfe
Website-FAQ
Technischer Support
Site Map
Tag Cloud
Suche
Kontakt
Erklärung des Begriffs: Schema Discovery API (SDA)
Begriff
Schema Discovery API
Abkürzung
SDA
Eintrag zuletzt aktualisiert am
10.02.2005
Zur Stichwortliste unseres Lexikons
Was ist
Schema Discovery API
?
ADO
.NET
2.0 erlaubt im Gegensatz zu Version 1.x, das Schema einer Datenbank zu erforschen. Dieser Teil von
ADO
.NET
wird auch als Schema Discovery
API
bezeichnet.
Ausführlicher Text
Schema-
API
Das neue Schema-
API
von
ADO
.NET
2.0 besteht aus einem einzigen Befehl. GetSchema() ruft Schema-Informationen von einer Datenbank in Form eines
DataTable
-
Objekt
s ab. GetSchema() erwartet eine Zeichenkette, die die Menge der zu übermittelnden Informationen angibt. Ein zweiter Parameter in Form eines Zeichenketten-Array erlaubt die Angabe eines Filters.
Dabei gibt es fünf allgemeine Menge, die durch die Konstantenliste
System.Data.Common
.DbMetaDataCollectionNames festgelegt ist:
MetaDataCollections: Eine
Liste
der verfügbaren Mengen (z.B. "Tables", "Views", "Users", etc.)
Restrictions: Eine
Liste
der verfügbaren Filter.
DataSourceInformation: Informationen zur Datenbankinstanz, auf die der Datenprovider verweist
DataTypes: Informationen über von der Datenbank unterstützen Datentypen
ReservedWords:
Liste
aller reservierten Worte der Datenbanksprache
Beispiel
SqlConnection sqlConn = new SqlConnection(CONNSTRING);
sqlConn.Open();
Demo.PrintHeader("MetaDataCollections:");
dt = sqlConn.GetSchema(
System.Data.Common
.DbMetaDataCollectionNames.MetaDataCollections);
Demo.PrintTable(dt);
Demo.PrintHeader("
Liste
der Tabellen:");
DataTable
dt = sqlConn.GetSchema("Tables");
Demo.PrintTable(dt);
Demo.PrintHeader("
Liste
der Views:");
dt = sqlConn.GetSchema("Tables");
Demo.PrintTable(dt);
Demo.PrintHeader("Unterstützte Datentypen:");
dt = sqlConn.GetSchema(
System.Data.Common
.DbMetaDataCollectionNames.DataTypes);
Demo.PrintTable(dt);
Demo.PrintHeader("Unterstützte Einschränkungen:");
dt = sqlConn.GetSchema(
System.Data.Common
.DbMetaDataCollectionNames.Restrictions);
Demo.PrintTable(dt);
Demo.PrintHeader("Informationen über die Datenbank:");
dt = sqlConn.GetSchema(
System.Data.Common
.DbMetaDataCollectionNames.DataSourceInformation);
Demo.PrintTable(dt);
Demo.PrintHeader("Reservierte Worte:");
dt = sqlConn.GetSchema(
System.Data.Common
.DbMetaDataCollectionNames.ReservedWords);
Demo.PrintTable(dt);
Einschränkungen angeben
Die Nutzung der Filter ist wenig komfortabel, entspricht aber der Anforderung eine universelle Programmierschnittstelle für die unterschiedlichen
Datenbankmanagementsystem
e zu schaffen. Die DbMetaDataCollectionNames.Restrictions liefert für die
Metadaten
typ Columns vier Filter: Catalog, Owner, Table und Column. Dies bedeutet, dass im zweiten Parameter bei GetSchema() vier Werte anzugeben sind. Filter, die nicht gesetzt werden sollen, sind mit null zu belegen. Das folgende Beispiel zeigt, wie Sie eine
Liste
der Spalten der Tabelle "FL_Fluege" erhalten.
Demo.PrintHeader("
Liste
der Spalten der Tabelle FL_Fluege:");
string[] e = new String[] { null,null,"Fl_Fluege",null };
dt = sqlConn.GetSchema("Columns", e);
Demo.PrintTable(dt);
Listing 8.26: Eingeschränkte Suche
Querverweise zu anderen Begriffen im Lexikon
Datenbankmanagementsystem (DBMS)
System.Data.Common
Metadaten
DataTable
Objekt
Liste
.NET (DOTNET)
Azure DevOps (ADO)
Application Programming Interface (API)
Beratung & Support
Beratung/Consulting: Sicherheitsanalyse/Sicherheitsreview
Anfrage für Beratung/Consulting zu Schema Discovery API SDA
Gesamter Beratungsthemenkatalog
Technischer Support zum Schema Discovery API SDA
Schulungen zu diesem Thema
Microsoft SharePoint für Entwickler: Anpassen/Customizing und Programmieren von Microsoft Sharepoint
Umstieg von .NET-Desktop-Entwicklung (WPF/Windows Forms) auf Webentwicklung (ASP.NET/ASP.NET Core + JavaScript/TypeScript mit Webframeworks wie Angular, Vue.js oder React)
Von ASP.NET 1.1 nach ASP.NET 2.0: Neuerungen in ASP.NET 2.0
Microsoft SQL Server 2012 - Die Neuerungen gegenüber SQL Server 2008 (Update-Schulung)
XML-Programmierung mit .NET (System.Xml) - Aufbauwissen
Microsoft Visio und BPMN 2.0 Business Prozesses - Erstellen von Businessprozessen mit BPMN
Moderne Web-Anwendungen mit TypeScript und Angular
ASP.NET Webforms im Überblick - Weboberflächen mit .NET
Microsoft Application Virtualization (App-V-Packaging)
.NET-Basisklassenbibliothek (.NET Base Class Library)
Mobile Anwendungsentwicklung für iOS mit Objective-C
Windows 10/Windows 11 für Administratoren
Microsoft SQL Server Reporting Services (SSRS)
Windows Server 2016 Update (Neuheiten für Administratoren gegenüber Windows Server 2012 R2)
ASP.NET Webforms (System.Web) - Basiswissen
Microsoft BizTalk Server für Softwareentwickler - Entwicklung von BizTalk-Lösungen - Basiswissen
Komponentenorientiertes Entwickeln mit .NET / .NET Components
Visual Studio für Einsteiger
Komponentenbasierte Softwareentwicklung (Component Based Development - CBD)
.NET Remoting
Windows Installer (MSI), Windows Installer-XML (WiX) und MSIX - Erstellen von Installationspaketen / Verteilen von Windows-Anwendungen / Deployment
Infrastructure as Code – Professionelles Azure-Management mit ARM-Templates
Dynamics 365 Customer Engagement / Microsoft Dynamics CRM für Anwender
Versionsverwaltung mit Subversion
Arbeiten mit PowerShell-Laufwerken
Microsoft SharePoint Server für Administratoren
ASP.NET Core 8.0/9.0: komplettes Wissen - mit MVC, Razor Pages, Blazor, WebAPIs und gRPC
C# 11.0 - Neuerungen gegenüber C# 10.0
.NET 7.0 - Änderungen und Neuerungen gegenüber .NET 6.0
Deployment und Versionierung von .NET-Anwendungen
Anfrage für eine individuelle Schulung zum Thema Schema Discovery API SDA
Gesamter Schulungsthemenkatalog
Bücher zu diesem Thema
Alle unsere aktuellen Fachbücher
E-Book-Abo für ab 99 Euro im Jahr