Condividi tramite


Utilizzo di schemi XML

La programmazione XML in SMO è limitata alla fornitura di tipi di dati XML, spazi dei nomi XML e indicizzazione semplice in colonne di tipi di dati XML.

MicrosoftSQL Server offre funzionalità di archiviazione nativa per istanze di documenti XML. Gli schemi XML consentono di definire tipi di dati XML complessi da utilizzare per convalidare documenti XML allo scopo di assicurare l'integrità dei dati. Lo schema XML è definito nell'oggetto XmlSchemaCollection.

Esempio

Per utilizzare qualsiasi esempio di codice fornito, è necessario scegliere l'ambiente, il modello e il linguaggio di programmazione per la creazione dell'applicazione. Per ulteriori informazioni, vedere Procedura: Creazione di un progetto Visual Basic SMO in Visual Studio .NET o Procedura: Creazione di un progetto Visual C# SMO in Visual Studio .NET.

Creazione di uno schema XML in Visual Basic

In questo esempio di codice viene illustrato come creare uno schema XML tramite l'oggetto XmlSchemaCollection. La proprietà Text, che definisce la raccolta di schemi XML, contiene numerose virgolette doppie. Queste ultime vengono sostituite dalla stringa chr(34).

'Connect to the local, default instance of SQL Server.
Dim srv As Server
srv = New Server()
'Reference the AdventureWorks database.
Dim db As Database
db = srv.Databases("AdventureWorks")
'Define an XmlSchemaCollection object by supplying the parent database and name arguments in the constructor.
Dim xsc As XmlSchemaCollection
xsc = New XmlSchemaCollection(db, "MySampleCollection")
xsc.Text = "<schema xmlns=" + Chr(34) + "http://www.w3.org/2001/XMLSchema" + Chr(34) + "  xmlns:ns=" + Chr(34) + "http://ns" + Chr(34) + "><element name=" + Chr(34) + "e" + Chr(34) + " type=" + Chr(34) + "dateTime" + Chr(34) + "/></schema>"
'Create the XML schema collection on the instance of SQL Server.
xsc.Create()

Creazione di uno schema XML in Visual C#

In questo esempio di codice viene illustrato come creare uno schema XML tramite l'oggetto XmlSchemaCollection. La proprietà Text, che definisce la raccolta di schemi XML, contiene numerose virgolette doppie. Queste ultime vengono sostituite dalla stringa chr(34).

//Connect to the local, default instance of SQL Server. 

{ 
   Server srv = default(Server); 
   srv = new Server(); 
   //Reference the AdventureWorks database. 
   Database db = default(Database); 
   db = srv.Databases("AdventureWorks"); 
   //Define an XmlSchemaCollection object by supplying the parent
   // database and name arguments in the constructor. 
   XmlSchemaCollection xsc = default(XmlSchemaCollection); 
   xsc = new XmlSchemaCollection(db, "MySampleCollection"); 
   xsc.Text = "<schema xmlns=" + Strings.Chr(34) + "http://www.w3.org/2001/XMLSchema" + Strings.Chr(34) + " xmlns:ns=" + Strings.Chr(34) + "http://ns" + Strings.Chr(34) + "><element name=" + Strings.Chr(34) + "e" + Strings.Chr(34) + " type=" + Strings.Chr(34) + "dateTime" + Strings.Chr(34) + "/></schema>"; 
   //Create the XML schema collection on the instance of SQL Server. 
   xsc.Create(); 
}