Not
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
gäller för:SQL Server
Azure SQL Database
I det här exemplet visas:
Hur man använder Microsoft SQLXML Managed Classes (Microsoft.Data.SqlXml) för att komma åt Microsoft SQL Server i Microsoft .NET Framework-miljön.
Hur DiffGrams som genereras i .NET Framework-miljön kan tillämpa datauppdateringar på SQL Server-tabeller.
I denna applikation utförs en XPath-fråga mot ett XSD-schema. Exekveringen av XPath-frågan returnerar ett XML-dokument som består av kontaktdata (FirstName, LastName). Applikationen laddar XML-dokumentet i datasetet i .NET Framework-miljön. Datan i datamängden ändras: kontaktens förnamn ändras till "Susan" för den första kontakten i datamängden. DiffGram genereras från datasetet, och uppdateringen som anges i DiffGram (ändringen av den anställdes förnamn) appliceras sedan på Person.Contact-tabellen.
Anmärkning
I koden måste du ange namnet på instansen av SQL Server i anslutningssträngen.
using System;
using System.Data;
using Microsoft.Data.SqlXml;
using System.IO;
class Test
{
static string ConnString = "Provider=SQLOLEDB;Server=SqlServerName;database=AdventureWorks;Integrated Security=SSPI;";
public static int testParams()
{
DataRow row;
SqlXmlAdapter ad;
//need a memory stream to hold diff gram temporarily
MemoryStream ms = new MemoryStream();
SqlXmlCommand cmd = new SqlXmlCommand(ConnString);
cmd.RootTag = "ROOT";
cmd.CommandText = "Con";
cmd.CommandType = SqlXmlCommandType.XPath;
cmd.SchemaPath = "MySchema.xml";
//load data set
DataSet ds = new DataSet();
ad = new SqlXmlAdapter(cmd);
ad.Fill(ds);
row = ds.Tables["Con"].Rows[0];
row["FName"] = "Susan";
ad.Update(ds);
return 0;
}
public static int Main(String[] args)
{
testParams();
return 0;
}
}
För att testa exemplet:
För att testa detta exempel måste du ha Microsoft .NET Framework installerat på din dator.
Spara detta XSD-schema (MySchema.xml) i en mapp:
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:sql="urn:schemas-microsoft-com:mapping-schema"> <xsd:element name="Con" sql:relation="Person.Contact" > <xsd:complexType> <xsd:sequence> <xsd:element name="FName" sql:field="FirstName" type="xsd:string" /> <xsd:element name="LName" sql:field="LastName" type="xsd:string" /> </xsd:sequence> <xsd:attribute name="ContactID" type="xsd:integer" /> </xsd:complexType> </xsd:element> </xsd:schema>Spara C#-koden (DocSample.cs) som ges i detta exempel i samma mapp där schemat lagras. (Om du lagrar filerna i en annan mapp måste du redigera koden och ange lämplig katalogsökväg för mappningsschemat.)
Komplisera koden. För att kompilera koden i kommandoprompten, använd:
csc /reference:Microsoft.Data.SqlXML.dll DocSample.csDetta skapar en exekverbar fil (DocSample.exe).
Vid kommandoprompten, utför DocSample.exe.