Freigeben über


SqlFacetAttribute Klasse

Definition

Fügt an die zurückgegebenen Ergebnisse eines benutzerdefinierten Typs (User-Defined Type, UDT) zusätzliche Informationen an, die in Transact-SQL verwendet werden können.

public ref class SqlFacetAttribute : Attribute
[System.AttributeUsage(System.AttributeTargets.Field | System.AttributeTargets.Parameter | System.AttributeTargets.Property | System.AttributeTargets.ReturnValue, AllowMultiple=false, Inherited=false)]
public class SqlFacetAttribute : Attribute
[<System.AttributeUsage(System.AttributeTargets.Field | System.AttributeTargets.Parameter | System.AttributeTargets.Property | System.AttributeTargets.ReturnValue, AllowMultiple=false, Inherited=false)>]
type SqlFacetAttribute = class
    inherit Attribute
Public Class SqlFacetAttribute
Inherits Attribute
Vererbung
SqlFacetAttribute
Attribute

Hinweise

SqlFacetAttribute kann nur für nicht leere Rückgabewerte angegeben werden.

SqlFacetAttribute wird nur verwendet, um Informationen über den Rückgabetyp abzuleiten, und ist nicht als Einschränkungsspezifikation dafür gedacht, was im Typ gespeichert werden kann. Wenn also ein Feld eine SqlFacetAttribute hat, die seine Größe auf 2 Zeichen angibt, ist der SQL Server Typ des Feldzugriffsausdrucks von Größe 2, aber Zuweisungen in das Feld werden durch dieses Facet nicht eingeschränkt.

In der folgenden Tabelle wird die Matrix der gültigen Werte für die verschiedenen Eigenschaften für bestimmte Feldtypen erfasst. In dieser Tabelle gibt "J" gültige und "N" ungültige Eigenschaften an.

Die angegebene SqlFacetAttribute muss mit dem Feldtyp kompatibel sein. Wenn die Eigenschaft ungültig ist, meldet die Typregistrierung einen Fehler, wenn der Benutzer einen nicht standardmäßigen Wert für die Eigenschaft angibt. Die maximalen Werte für Precision die Eigenschaften und Scale sind 38. Für die MaxSize -Eigenschaft sollte der Wert im Bereich von 1 bis 8000 für binäre und Nicht-Unicode-Daten, 1-4000 für Unicode-Daten oder -1 liegen. Alle anderen Werte sind ungültig.

Typ IsFixedLength MaxSize Genauigkeit Skalieren IsNullable
SqlBoolean N N N N J
SqlByte N N N N J
SqlInt16 N N N N J
SqlInt32 N N N N J
SqlInt64 N N N N J
SqlSingle N N N N J
SqlDouble N N N N J
SqlDateTime N N N N J
SqlMoney N N N N J
SqlGuid N N N N J
SqlDecimal N N J J J
SqlString J J N N J
SqlBinary J J N N J
SqlXml N N N N J
SqlBytes J J N N J
SqlChars J J N N J
Eingebettete UDTs N N N N J
String J J N N J
Byte[] J J N N J
Char[] J J N N J
DateTime N N N J1 N
Decimal N N J J J

(1) Wenn Sie die Skalierung für einen DateTime-Typ angeben, wird der Wert als DateTime2-Typ mit der angegebenen Skalierung an Transact-SQL zurückgegeben.

Konstruktoren

SqlFacetAttribute()

Ein optionales Attribut des Rückgabetyps eines benutzerdefinierten Typs (User-Defined Type, UDT), mit dem zusätzliche Informationen an das zurückgegebene Ergebnis angefügt werden, die in Transact-SQL verwendet werden können.

Eigenschaften

IsFixedLength

Gibt an, ob der Rückgabetyp des benutzerdefinierten Typs eine feste Länge hat.

IsNullable

Gibt an, ob der Rückgabetyp des benutzerdefinierten Typs null sein kann.

MaxSize

Die maximale Größe des zugrunde liegenden Feldtyps des benutzerdefinierten Typs in logischen Einheiten.

Precision

Die Genauigkeit des Rückgabetyps des benutzerdefinierten Typs.

Scale

Die Skalierung des Rückgabetyps des benutzerdefinierten Typs.

Gilt für: