So konvertiert FOR JSON SQL Server-Datentypen in JSON-Datentypen (SQL Server)
Gilt für: SQL Server 2016 (13.x) und höher Azure SQL-Datenbank Azure SQL Managed Instance Azure Synapse Analytics (nur serverloser SQL-Pool)
Die FOR JSON
-Klausel verwendet die folgenden Regeln, um SQL Server-Datentypen in JSON-Typen in der JSON-Ausgabe zu konvertieren.
Kategorie | SQL Server-Datentyp | JSON-Datentyp |
---|---|---|
Zeichen- und Zeichenfolgetypen | char, nchar, varchar, nvarchar | Zeichenfolge |
Numerische Typen | int, bigint, float, decimal, numeric | Zahl |
Bit-Typ | bit | Boolesche Werte („true“ oder „false“) |
Datum- und Uhrzeittypen | date, datetime, datetime2, time, datetimeoffset | Zeichenfolge |
Binärtypen | varbinary, binary, image, timestamp/rowversion | BASE64-codierte Zeichenfolge |
CLR-Typen | geometry, geography, andere CLR-Typen | Nicht unterstützt. Diese Typen geben einen Fehler zurück. Verwenden Sie in der SELECT -Anweisung CAST oder CONVERT , oder verwenden Sie eine CLR-Eigenschaft oder -Methode, um die Quelldaten in einen SQL Server-Datentyp zu konvertieren, der erfolgreich in einen JSON-Typ konvertiert werden kann. Verwenden Sie z.B. STAsText() für den Geometrietyp oder ToString() für alle CLR-Typen. Der Typ des JSON-Ausgabewerts wird dann abgeleitet aus dem Rückgabetyp der Konvertierung, die Sie auf die SELECT -Anweisung anwenden. |
Andere Typen | uniqueidentifier, money | Zeichenfolge |
Weitere Informationen zu JSON in SQL Server und Azure SQL-Datenbank
Microsoft-Videos
Eine visuelle Einführung in die JSON-Unterstützung, die in SQL Server und Azure SQL-Datenbank integriert ist, finden Sie in den folgenden Videos: