Datentypen in AdventureWorks
In diesem Thema werden die CLR-benutzerdefinierten Typen von Microsoft .NET Framework, die Microsoft SQL Server 2005-Systemdatentypen und die Transact-SQL-Aliasdatentypen aufgelistet, die in der AdventureWorks-Beispieldatenbank dargestellt sind.
CLR-benutzerdefinierte Typen
In der folgenden Tabelle werden die Beispiele in AdventureWorks aufgelistet, die CLR-benutzerdefinierte Typen verwenden. Weitere Informationen zu CLR-benutzerdefinierten Typen finden Sie unter CLR User-Defined Types.
Beispiel | Beschreibung |
---|---|
Definiert einen benutzerdefinierten Currency-Datentyp mithilfe von C#. Dieser benutzerdefinierte Datentyp kapselt sowohl einen Betrag als auch ein Gebietsschema ein, um die richtige Darstellung des Betrags als Währungswert in diesem Gebietsschema zu bestimmen. Im Beispiel wird zudem eine Währungsumrechnungsfunktion bereitgestellt, die eine Instanz des benutzerdefinierten Currency-Typs zurückgibt. |
|
Umfasst Funktionen zum Offenlegen von Assemblymetadaten für Transact-SQL: Beispiele für Streaming-Tabellenwertfunktionen, um die Typen in einer Assembly als Tabelle zurückzugeben, sowie Funktionen, um die Felder, Methoden und Eigenschaften in einem benutzerdefinierten Typ zurückzugeben. |
|
Veranschaulicht das Erstellen und Verwenden eines einfachen benutzerdefinierten Datentyps sowohl aus Transact-SQL als auch aus einer Clientanwendung heraus, die System.Data.SqlClient verwendet. |
|
Veranschaulicht die Implementierung eines benutzerdefinierten UTF-8-Datentyps, der das Typensystem der Datenbank erweitert, um UTF-8-codierte Werte speichern zu können. Dieser Typ implementiert auch Code für die Konvertierung von Unicode-Zeichenfolgen in und aus UTF-8. |
|
Definiert die beiden benutzerdefinierten Datentypen CADatetime und CADate, die die dem lokalen Kalender entsprechende Verarbeitung von Daten und Uhrzeiten bereitstellen. |
|
Übergibt ein Array mit Informationen von einem Client an eine CLR-gespeicherte Prozedur auf dem Server mithilfe eines CLR-benutzerdefinierten Typs. |
Systemdatentypen
In der folgenden Tabelle werden die SQL Server-Systemdatentypen sowie die Tabellen und Spalten, die diese verwenden, aufgelistet. Weitere Informationen zu Systemdatentypen finden Sie unter Datentypen (Transact-SQL).
Datentyp | Verwendung in schema.table.column |
---|---|
bigint |
Wird nicht verwendet. |
bit |
Siehe Flag und NameStyle im nachfolgenden Abschnitt über Aliasdatentypen. |
char oder nchar |
HumanResources.Employee.Gender HumanResources.Employee.MaritalStatus Person.StateProvince.StateProvinceCode Production.BillOfMaterials.UnitMeasureCode Production.Culture.CultureID Production.Document.Revision Production.Product.Class Production.Product.ProductLine Production.Product.SizeUnitMeasureCode Production.Product.Style Production.Product.WeightUnitMeasureCode Production.ProductModelProductDescriptionCulture.CultureID Production.TransactionHistory.TransactionType Production.TransactionHistoryArchive.TransactionType Production.UnitMeasure.UnitMeasureCode Purchasing.ProductVendor.UnitMeasureCode Sales.CountryRegionCurrency.CurrencyCode Sales.CurrencyRate.FromCurrencyCode Sales.CurrencyRate.ToCurrencyCode Sales.Customer.CustomerType Sales.Currency.CurrencyCode |
datetime |
ModifiedDate-Spalte in allen Tabellen dbo.AWBuildVersion.VersionDate dbo.DatabaseLog.PostTime HumanResources.Employee.BirthDate HumanResources.Employee.HireDate HumanResources.EmployeeDepartmentHistory.EndDate HumanResources.EmployeeDepartmentHistory.StartDate HumanResources.EmployeePayHistory.RateChangeDate HumanResources.Shift.EndTime HumanResources.Shift.StartTime Production.BillOfMaterials.EndDate Production.BillOfMaterials.StartDate Production.Product.DiscontinuedDate Production.Product.SellEndDate Production.Product.SellStartDate Production.ProductCostHistory.EndDate Production.ProductCostHistory.StartDate Production.ProductListPriceHistory.EndDate Production.ProductListPriceHistory.StartDate Production.TransactionHistory.TransactionDate Production.TransactionHistoryArchive.TransactionDate Production.WorkOrder.DueDate Production.WorkOrder.EndDate Production.WorkOrder.StartDate Production.WorkOrderRouting.ActualEndDate Production.WorkOrderRouting.ActualStartDate Production.WorkOrderRouting.ScheduledEndDate Production.WorkOrderRouting.ScheduledStartDate Purchasing.ProductVendor.LastReceiptDate Purchasing.PurchaseOrderDetail.DueDate Purchasing.PurchaseOrderHeader.OrderDate Purchasing.PurchaseOrderHeader.ShipDate Sales.SalesCurrencyRate.CurrencyRateDate Sales.SalesOrderHeader.DueDate Sales.SalesOrderHeader.OrderDate Sales.SalesOrderHeader.ShipDate Sales.SalesPersonQuotaHistory.QuotaDate Sales.SalesTerritoryHistory.EndDate Sales.SalesTerritoryHistory.StartDate Sales.ShoppingCartItem.DateCreated Sales.SpecialOfferEndDate Sales.SpecialOfferStartDate |
decimal |
Production.BillOfMaterials.PerAssemblyQty Production.Location.Availability Production.Product.Weight Purchasing.PurchaseOrderDetail.ReceivedQty Purchasing.PurchaseOrderDetail.RejectedQty Purchasing.PurchaseOrderDetail.StockedQty Production.WorkOrderRouting.ActualResourcesHrs |
float |
Wird nicht verwendet. |
image |
Wird nicht verwendet. Siehe varbinary(max). |
int |
Alle Tabellen. |
money |
HumanResources.EmployeePayHistory.Rate Production.Product.ListPrice Production.Product.StandardCost Production.ProductCostHistory.StandardCost Production.ProductListPriceHistory.ListPrice Production.TransactionHistory.ActualCost Production.TransactionHistoryArchive.ActualCost Production.WorkOrderRouting.PlannedCost Production.WorkOrderRouting.ActualCost Purchasing.ProductVendor.LastReceiptCost Purchasing.ProductVendor.StandardPrice Purchasing.PurchaseOrderDetail.LineTotal Purchasing.PurchaseOrderDetail.UnitPrice Purchasing.PurchaseOrderHeader.Freight Purchasing.PurchaseOrderHeader.SubTotal Purchasing.PurchaseOrderHeader.TaxAmt Purchasing.PurchaseOrderHeader.TotalDue Purchasing.ShipMethod.ShipBase Purchasing.ShipMethod.ShipRate Sales.CurrencyRate.AverageRate Sales.CurrencyRate.EndOfDayRate Sales.SalesOrderDetail.UnitPrice Sales.SalesOrderDetail.UnitPriceDiscount Sales.SalesOrderHeader.Freight Sales.SalesOrderHeader.SubTotal Sales.SalesOrderHeader.TaxAmt Sales.SalesOrderHeader.TotalDue Sales.SalesPerson.Bonus Sales.SalesPerson.SalesLastYear Sales.SalesPerson.SalesYTD Sales.SalesPersonQuotaHistory.SalesQuota Sales.SalesTerritory.CostLastYear Sales.SalesTerritory.CostYTD Sales.SalesTerritory.SalesLastYear Sales.SalesTerritory.SalesYTD |
numeric |
Sales.SalesOrderDetail.LineTotal |
smallint |
HumanResources.Department.DepartmentID HumanResources.Employee.SickLeaveHours HumanResources.Employee.VacationHours HumanResources.EmployeeDepartmentHistory.DepartmentID Production.BillOfMaterials.BOMLevel Production.Location.LocationID Production.Product.SafetyStockLevel Production.Product.ReorderPoint Production.ProductInventory.Quantity Production.ProductInventory.LocationID Production.WorkOrder.ScrappedQty Production.WorkOrder.ScrapReasonID Production.WorkOrderRouting.OperationSequence Production.WorkOrderRouting.LocationID Purchasing.PurchaseOrderDetail.OrderQty Sales.CreditCard.ExpYear Sales.SalesOrderDetail.OrderQty |
smallmoney |
Production.Location.CostRate Sales.SalesPerson.CommissionPct Sales.SalesTaxRate.TaxRate Sales.SpecialOffer.DiscountPct |
sysname |
dbo.DatabaseLog.DatabaseUser dbo.DatabaseLog.Event dbo.DatabaseLog.Schema dbo.DatabaseLog.Object |
text oder ntext |
Wird nicht verwendet. Siehe varchar(max) oder nvarchar(max). |
tinyint |
dbo.AWBuildVersion.SystemInformationID HumanResources.EmployeePayHistory.PayFrequency HumanResources.EmployeeDepartmentHistory.ShiftID HumanResources.EmployePayHistory.Rate Production.Document.Status Production.ProductInventory.Bin Purchasing.PurchaseOrderHeader.RevisionNumber Purchasing.PurchaseOrderHeader.Status Purchasing.Vendor.CreditRating Sales.CreditCard.ExpMonth Sales.SalesOrderHeader.RevisionNumber Sales.SalesOrderHeader.Status Sales.SalesTaxRate.TaxType |
uniqueidentifier (GUID) |
Siehe ROWGUID-Spalte in Tabellen der folgenden Schemas:
In AdventureWorks wird die ROWGUID-Spalte in einem Replikationsbeispiel verwendet. |
varbinary(max) |
Production.Document.Document Production.ProductPhoto.LargePhoto Production.ProductPhoto.ThumbnailPhoto |
varchar oder nvarchar |
Alle Tabellen. |
varchar(max) oder nvarchar(max) |
Production.Document.DocumentSummary dbo.DatabaseLog.TSQL |
xml |
dbo.DatabaseLog.XmlEvent HumanResources.JobCandidate.Resume Person.Contact.AdditionalContactInfo Production.Illustration.Diagram Production.ProductModel.CatalogDescription Production.ProductModel.Instructions Sales.Individual.Demographics Sales.Store.Demographics |
Aliasdatentypen
In der folgenden Tabelle werden die benutzerdefinierten Aliasdatentypen in Transact-SQL sowie die Tabellen und Spalten, die diese verwenden, aufgelistet. Weitere Informationen zu Aliasdatentypen finden Sie unter Arbeiten mit Aliasdatentypen.
Datentypname | Definiert als | Verwendung in schema.table.column |
---|---|---|
AccountNumber |
nvarchar(15) |
Sales.SalesOrderHeader.AccountNumber Purchasing.Vendor.AccountNumber |
Flag |
bit |
HumanResources.Employee.CurrentFlag HumanResources.Employee.SalariedFlag Person.StateProvince.IsOnlyStateProvinceFlag Production.Product.FinishedGoodsFlag Production.Product.MakeFlag Production.ProductProductPhoto.Primary Purchasing.Vendor.ActiveFlag Purchasing.Vendor.PreferredVendorStatusFlag Sales.SalesOrderHeader.OnlineOrderFlag |
NameStyle |
bit |
Person.Contact.NameStyle |
Name |
nvarchar(50) |
HumanResources.Department.GroupName HumanResources.Department.Name HumanResources.Shift.Name Person.AddressType.Name Person.Contact.FirstName Person.Contact.LastName Person.Contact.MiddleName Person.ContactType.Name Person.CountryRegion.Name Person.StateProvince.Name Production.Culture.Name Production.Location.Name Production.Product.Name Production.ProductCategory.Name Production.ProductModel.Name Production.ProductReview.ReviewerName Production.ProductSubcategory.Name Production.ScrapReason.Name Production.UnitMeasure.Name Purchasing.ShipMethod.Name Purchasing.Vendor.Name Sales.Currency.Name Sales.SalesReason.Name Sales.SalesReason.ReasonType Sales.SalesTaxRate.Name Sales.SalesTerritory.Name Sales.Store.Name |
OrderNumber |
nvarchar(25) |
Sales.SalesOrderHeader.SalesOrderNumber |
Phone |
nvarchar(25) |
Person.Contact.Phone |
Siehe auch
Andere Ressourcen
AdventureWorks (Datenwörterbuch)
SQL Server-Objekte in AdventureWorks