clr parametre verilerini eşleme

Aşağıdaki tablo listeleri Microsoft  SQL Serververi türleri, eşdeğerleri ortak dil çalışma zamanı (clr) için SQL Serverde System.Data.SqlTypesad ve yerel clr eşdeğerleri Microsoft.net Framework.

SQL Server veri türü

Türü (System.Data.SqlTypesImports veya Microsoft.SqlServer.Types)

clr veri türü (.net Framework)

bigint

SqlInt64

Int64, Nullable<Int64>

binary

SqlBytes, SqlBinary

Byte[]

bit

SqlBoolean

Boolean, Nullable<Boolean>

char

Hiçbiri

Hiçbiri

cursor

Hiçbiri

Hiçbiri

date

SqlDateTime

DateTime, Nullable<DateTime>

datetime

SqlDateTime

DateTime, Nullable<DateTime>

datetime2

Hiçbiri

DateTime, Nullable<DateTime>

DATETIMEOFFSET

None

DateTimeOffset, Nullable<DateTimeOffset>

decimal

SqlDecimal

Decimal, Nullable<Decimal>

float

SqlDouble

Double, Nullable<Double>

geography

SqlGeography

SqlGeographySQL Server ile birlikte yüklenir ve indirilebilir Microsoft.SqlServer.Types.dll tanımlanır SQL Server 2012 özellik paketi.

Hiçbiri

geometry

SqlGeometry

SqlGeometrySQL Server ile birlikte yüklenir ve indirilebilir Microsoft.SqlServer.Types.dll tanımlanır SQL Server 2012 özellik paketi.

Hiçbiri

hierarchyid

SqlHierarchyId

SqlHierarchyIdSQL Server ile birlikte yüklenir ve indirilebilir Microsoft.SqlServer.Types.dll tanımlanır SQL Server 2012 özellik paketi.

Hiçbiri

image

Hiçbiri

Hiçbiri

int

SqlInt32

Int32, Nullable<Int32>

money

SqlMoney

Decimal, Nullable<Decimal>

nchar

SqlChars, SqlString

String, Char[]

ntext

Hiçbiri

Hiçbiri

numeric

SqlDecimal

Decimal, Nullable<Decimal>

nvarchar

SqlChars, SqlString

SQLCharsveri aktarımı ve erişim için daha iyi bir maç olduğunu ve SQLStringdize işlemlerini gerçekleştirmek için daha iyi bir eştir.

String, Char[]

nvarchar(1), nchar(1)

SqlChars, SqlString

Char, String, Char[], Nullable<char>

real

SqlSingle(öfke SqlSingle, ancak, daha büyük real)

Single, Nullable<Single>

rowversion

Hiçbiri

Byte[]

smallint

SqlInt16

Int16, Nullable<Int16>

smallmoney

SqlMoney

Decimal, Nullable<Decimal>

sql_variant

Hiçbiri

Object

table

Hiçbiri

Hiçbiri

text

Hiçbiri

Hiçbiri

time

Hiçbiri

TimeSpan, Nullable<TimeSpan>

timestamp

Hiçbiri

Hiçbiri

tinyint

SqlByte

Byte, Nullable<Byte>

uniqueidentifier

SqlGuid

Guid, Nullable<Guid>

User-defined type(UDT)

Hiçbiri

Aynı derleme veya bir bağımlı birleştirme türü kullanıcı tanımlı bağlı olduğu aynı sınıf.

varbinary

SqlBytes, SqlBinary

Byte[]

varbinary(1), binary(1)

SqlBytes, SqlBinary

byte, Byte[], Nullable<byte>

varchar

Hiçbiri

Hiçbiri

xml

SqlXml

Hiçbiri

Otomatik veri türü dönüştürme ile Out parametreleri

Bir clr yöntem bilgileri çağıran kod veya program giriş parametresi ile işaretlenerek döndürebilir outdeğiştirici (Microsoft Visual C#) veya <Out()> ByRef(Microsoft Visual bir clr veri türü giriş parametresi ise, temel) System.Data.SqlTypesad ve çağıran program belirtir muadili SQL Serververi türü giriş parametresi olarak bir türü dönüştürme otomatik olarak ne zaman clr yöntem veri türünü döndürür oluşur.

Örneğin, bir giriş parametresi aşağıdaki clr depolanan yordamı olan SqlInt32ile işaretlenmiş clr veri türü out(C#) veya <Out()> ByRef(Visual Basic):

   [Microsoft.SqlServer.Server.SqlProcedure]
   public static void PriceSum(out SqlInt32 value)
   { … }
   [Microsoft.SqlServer.Server.SqlProcedure]
   public static void PriceSum(out SqlInt32 value)
   { … }
    <Microsoft.SqlServer.Server.SqlProcedure> _
    Public Shared Sub PriceSum( <Out()> ByRef value As SqlInt32)
    …
    End Sub
    <Microsoft.SqlServer.Server.SqlProcedure> _
    Public Shared Sub PriceSum( <Out()> ByRef value As SqlInt32)
    …
    End Sub

Derleme inşa ve veritabanında oluşturulan sonra saklı yordam oluşturulur SQL Serverbelirten aşağıdaki Transact-sql ile bir SQL Serververi türü intoutput parametresi olarak:

CREATE PROCEDURE PriceSum (@sum int OUTPUT)
AS EXTERNAL NAME TestStoredProc.StoredProcedures.PriceSum

CREATE PROCEDURE PriceSum (@sum int OUTPUT)
AS EXTERNAL NAME TestStoredProc.StoredProcedures.PriceSum

clr depolanan yordamı denir, SqlInt32veri türü için otomatik olarak dönüştürülür bir intveri türü, çağıran programa döndü.

clr veri türü otomatik olarak kendi eşdeğer dönüştürülebilir SQL Serververi türleri bir out parametresi, ancak. Aşağıdaki tabloda, bu özel durumları.

clr veri türü (SQL Server)

SQL Server veri türü

Decimal

smallmoney

SqlMoney

smallmoney

Decimal

money

DateTime

smalldatetime

SQLDateTime

smalldatetime

Ayrıca bkz.

Diğer Kaynaklar

SQL Server veri türleri.net Framework

Değişiklik Geçmişi

Güncelleştirilmiş içerik

Eklenen SqlGeography, SqlGeometry, ve SqlHierarchyIdtürlerini eşleştirme tablosu.