Freigeben über


sp_datatype_info (Transact-SQL)

Gibt Informationen zu den von der aktuellen Umgebung unterstützten Datentypen zurück.

Themenlink (Symbol)Transact-SQL-Syntaxkonventionen

Syntax

sp_datatype_info [ [ @data_type = ] data_type ] 
     [ , [ @ODBCVer = ] odbc_version ] 

Argumente

  • [ @data_type= ] data_type
    Die Codenummer für den angegebenen Datentyp. Lassen Sie diesen Parameter aus, um eine Liste aller Datentypen zu erhalten. data_type ist vom Datentyp int, der Standardwert ist 0.

  • [ @ODBCVer= ] odbc_version
    Ist die verwendete ODBC-Version. odbc_version ist vom Datentyp tinyint, der Standardwert ist 2.

Rückgabecodewerte

Keine

Resultsets

Spaltenname

Datentyp

Beschreibung

TYPE_NAME

sysname

Der DBMS-abhängige Datentyp.

DATA_TYPE

smallint

Der Code für den ODBC-Datentyp, dem alle Spalten dieses Datentyps zugeordnet sind.

PRECISION

int

Die maximale Genauigkeit des Datentyps bezüglich der Datenquelle. NULL wird für Datentypen zurückgegeben, auf die die Genauigkeit nicht anwendbar ist. Der Rückgabewert für die PRECISION-Spalte hat die Basis 10.

LITERAL_PREFIX

varchar(32)

Das oder die Zeichen, die einer Konstante vorangestellt werden. Dazu zählen beispielsweise ein einfaches Anführungszeichen (') bei Zeichentypen und 0x bei Binärtypen.

LITERAL_SUFFIX

varchar(32)

Das oder die Zeichen, die eine Konstante beenden. Dazu zählen beispielsweise ein einfaches Anführungszeichen (') bei Zeichentypen und keine Anführungszeichen bei Binärtypen.

CREATE_PARAMS

varchar(32)

Die Beschreibung der Erstellungsparameter für diesen Datentyp. Dazu zählen beispielsweise "precision, scale" bei decimal, NULL bei float und "max_length" bei varchar.

NULLABLE

smallint

Gibt die NULL-Zulässigkeit an.

1 = Lässt NULL-Werte zu.

0 = Lässt keine NULL-Werte zu.

CASE_SENSITIVE

smallint

Gibt die Unterscheidung nach Groß-/Kleinschreibung an.

1 = Bei allen Spalten dieses Typs wird nach Groß-/Kleinschreibung unterschieden (für Sortierungen).

0 = Bei allen Spalten dieses Typs wird nicht nach Groß-/Kleinschreibung unterschieden.

SEARCHABLE

smallint

Gibt die Möglichkeiten zur Suche für den Spaltentyp an:

1 = Kann nicht durchsucht werden.

2 = Durchsuchbar mit LIKE.

3 = Durchsuchbar mit WHERE.

4 = Durchsuchbar mit WHERE oder LIKE.

UNSIGNED_ATTRIBUTE

smallint

Gibt das Vorzeichen des Datentyps an.

1 = Datentyp ohne Vorzeichen

0 = Datentyp mit Vorzeichen

MONEY

smallint

Gibt den money-Datentyp an.

1 = money-Datentyp.

0 = Kein money-Datentyp

AUTO_INCREMENT

smallint

Gibt die automatische Inkrementierung an.

1 = Automatische Inkrementierung

0 = Keine automatische Inkrementierung

NULL = Attribut nicht zutreffend

Eine Anwendung kann zwar Werte in eine Spalte einfügen, die dieses Attribut aufweist, kann jedoch die Werte in der Spalte nicht aktualisieren. Außer für den bit-Datentyp ist AUTO_INCREMENT nur für Datentypen zulässig, die den Datentypkategorien "genauer numerischer Ausdruck" und "ungefährer numerischer Ausdruck" angehören.

LOCAL_TYPE_NAME

sysname

Lokalisierte Version des von der Datenquelle abhängigen Datentypamens. Beispielsweise lautet DECIMAL auf Französisch DECIMALE. NULL wird zurückgegeben, wenn ein lokalisierter Name nicht von der Datenquelle unterstützt wird.

MINIMUM_SCALE

smallint

Die minimalen Dezimalstellen des Datentyps bezüglich der Datenquelle. Wenn für einen Datentyp feste Dezimalstellen definiert wurden, enthalten die Spalten MINIMUM_SCALE und MAXIMUM_SCALE denselben Wert. NULL wird zurückgegeben, wenn Dezimalstellen auf den Datentyp nicht anwendbar sind.

MAXIMUM_SCALE

smallint

Die maximalen Dezimalstellen des Datentyps bezüglich der Datenquelle. Wenn die maximalen Dezimalstellen für die Datenquelle nicht separat definiert wurden und stattdessen definiert wurde, dass sie der maximalen Genauigkeit entsprechen, enthält diese Spalte denselben Wert wie die PRECISION-Spalte.

SQL_DATA_TYPE

smallint

Der Wert des SQL-Datentyps, wie er im TYPE-Feld des Deskriptors angezeigt wird. Diese Spalte entspricht der DATA_TYPE-Spalte mit Ausnahme der Datentypen datetime und ANSI interval. Dieses Feld gibt immer einen Wert zurück.

SQL_DATETIME_SUB

smallint

Wenn SQL_DATA_TYPE den Wert SQL_DATETIME oder SQL_INTERVAL hat, enthält diese Spalte den Subcode für datetime oder ANSI interval. Bei allen anderen Datentypen außer datetime und ANSI interval ist dieses Feld NULL.

NUM_PREC_RADIX

int

Die Anzahl der Bits oder Stellen für das Berechnen der höchsten Zahl, die eine Spalte enthalten kann. Wenn es sich um einen ungefähren numerischen Datentyp handelt, enthält diese Spalte den Wert 2 für mehrere Bits. Bei exakten numerischen Datentypen enthält diese Spalte den Wert 10 für mehrere Dezimalstellen. Andernfalls ist diese Spalte NULL. Aus der Kombination von Genauigkeit und Basis kann die Anwendung die höchste Zahl berechnen, die die Spalte enthalten kann.

INTERVAL_PRECISION

smallint

Genauigkeit für anführenden Intervallwert, wenn data_type den Wert interval hat, andernfalls NULL.

USERTYPE

smallint

usertype-Wert aus der systypes-Tabelle.

Hinweise

sp_datatype_info entspricht SQLGetTypeInfo in ODBC. Die zurückgegebenen Ergebnisse sind zuerst nach DATA_TYPE und dann nach der Übereinstimmung des Datentyps mit dem entsprechenden ODBC SQL-Datentyp geordnet.

Berechtigungen

Setzt die Mitgliedschaft in der public-Rolle voraus.

Beispiele

Im folgenden Beispiel werden Informationen für die Datentypen sysname und nvarchar durch Angeben des data_type-Werts -9 abgerufen.

USE master;
GO
EXEC sp_datatype_info -9;
GO