CAST ve CONVERT (Transact-SQL)

Bir veri türündeki bir ifade diğerine dönüştürür.

Topic link iconTransact-SQL sözdizimi kuralları

Syntax for CAST:
CAST ( expression AS data_type [ (length ) ])

Syntax for CONVERT:
CONVERT ( data_type [ ( length ) ] , expression [ , style ] )

Bağımsız değişkenler

  • expression
    Herhangi bir geçerliifade.

  • data_type
    Hedef veri türündedir.Buxml,bigint, vesql_variant.diğer ad ad veri türü kullanılamaz.Kullanılabilir veri türleri hakkında daha fazla bilgi için bkz:(Transact-SQL) veri türleri.

  • length
    Hedef veri tipinin uzunluğunu belirten isteğe bağlı bir tamsayı belirtilir.Varsayılan değer 30’dır.

  • style
    İş nasıl çevirmek için çevir işlev olduğunu belirleyen bir tamsayı ifadeexpression.Stil NULL, NULL döndürülür.Aralık tarafından belirlenirdata_type.Daha fazla bilgi için Açıklamalar bölümüne bakın.

Dönüş Türleri

Verirexpressionçevrilmesi içindata_type.

Remarks

Tarih ve saat stilleri

Zamanexpressionbir tarih veya saat veri türü stylegösterilen aşağıdaki değerlerden biri olabilir tablo.Other values are processed as 0.SQL Server supports the date format in Arabic style by using the Kuwaiti algorithm.

(Yy) yüzyıl belirtilmeden ( 1 )

Yüzyıl ile (yyyy)

Standard

Input/Output (3)

-

0 or 100 (1,2)

Default

Ay gg yyyy hh:miAM (ya da PM)

1

101

ABD:.

AA.GG.YYYY

2

102

ANSI

yy.mm.dd

3

103

İngiliz/Fransızca

gg/aa/yyyy

4

104

Almanca

dd.mm.YY

5

105

İtalyanca

gg-aa-yy

6

106(1)

-

AA ay yy

7

107(1)

-

Pzt dd, yy

8

108

-

hh:mi:ss

-

9 or 109 (1,2)

Varsayılan + milisaniye

Ay gg yyyy hh:mi:ss:mmmAM (ya da PM)

10

110

ABD

aa-gg-yy

11

111

JAPAN

yy/aa/gg

12

112

ISO

YYAAGG

yyyyaagg

-

13 or 113 (1,2)

Avrupa varsayılan + milisaniye

dd mon yyyy hh:mi:ss:mmm(24h)

14

114

-

hh:mi:ss:mmm(24h)

-

20 or 120 (2)

Geleneksel ODBC

yyyy-aa-gg hh:mi:ss(24h)

-

21 or 121 (2)

ODBC (milisaniye ile) kabul edilen

yyyy-aa-gg hh:mi:ss.mmm(24h)

-

126 (4)

ISO8601

yyyy-aa-ddThh:mi:ss.mmm (boşluksuz)

-

127(6, 7)

Z saat dilimi ile ISO8601.

yyyy-aa-ddThh:mi:ss.mmmZ

(boşluksuz)

-

130 (1,2)

Hijri (5)

dd mon yyyy hh:mi:ss:mmmAM

-

131 (2)

Hijri (5)

gg/aa/yy hh:mi:ss:mmmAM

1 Bu stil dönüş nondeterministic sonuçlar.(Yüzyıl) olmadan tüm (yy) içeren stilleri ve (yüzyıl ile) alt küme küme küme kümesini (yyyy) stilleri.

2 The default values (style0 or 100, 9 or 109, 13 or 113, 20 or 120, and 21 or 121) always return the century (yyyy).

3datetimeÇıkış karakter veri. dönüştürdüğünüzde dönüştürdüğünüzde giriş

4 XML. için tasarlanmış Dönüştürme içindatetimeorsmalldatetimekarakter verileri, önceki tabloyu. açıklandığı gibi çıktı biçimi olan

5 Hijri is a calendar system with several variations.SQL Server uses the Kuwaiti algorithm.

Important noteImportant Note:

Varsayılan olarak,SQL Serverbir kesme 2049 yıla dayanan iki basamaklı yılları yorumlaması.Diğer bir deyişle, iki basamaklı yıl 49 2049 yorumlanır ve iki basamaklı yıl 50 1950 yorumlanır.Many client applications, such as those based on Automation objects, use a cutoff year of 2030.SQL Server provides the two digit year cutoff configuration option that changes the cutoff year used by SQL Server and allows for the consistent treatment of dates.Belirleyen dört basamaklı yıllar önerilir.

6datetimeVeya için çevrim karakter verileri, yalnızca desteklenen smalldatetime.İçin yalnızca gösteren karakter verileri, tarih veya bileşenleri yalnızca saat atamadatetimeorsmalldatetimeveri türleri, belirsiz bir saat bileşen 00:00:00.000 için küme ve belirsiz tarih bileşeni 1900-01-01 küme.

7The optional time zone indicator, Z, is used to make it easier to map XML datetime values that have time zone information to SQL Serverdatetime values that have no time zone.Z gösterge için saat dilimi: UTC-0 olur.Diğer saat dilimleri ss: dd uzaklığı ile gösterilen + veya - yön.Örnek: 2006-12-12T23:45:12-08:00.

Karakter veri dönüştürdüğünüzdesmalldatetimesaniye ve milisaniye içeren stiller gösteren sıfır bu pozisyon.İstenmeyen tarih bölümleri arasında dönüştürdüğünüzde kesmekdatetimeorsmalldatetimeuygun kullanarak değerlericharorvarcharveri türü uzunluğu.

Dönüştürmek içindatetimeoffsetkarakter veri saat içeren bir stil ile bir saat dilimi uzaklığı eklenir sonucu.

float ve gerçek stilleri

Zamanexpressionisfloatorreal, stylegösterilen aşağıdaki değerlerden biri olabilir tablo.Diğer değerleri 0 olarak işlenir.

Değer

Output

0 (Varsayılan)

En çok 6 basamak.Bilimsel gösterimde, uygun olduğunda kullanın.

1

Her zaman 8 basamak.Her zaman bilimsel gösterimde kullanın.

2

Her zaman 16 basamak.Her zaman bilimsel gösterimde kullanın.

126, 128, 129

Eski nedenleri için eklenen ve sonraki bir sürümde itiraz.

para ve smallmoney stilleri

Zamanexpressionismoneyorsmallmoney,stylegösterilen aşağıdaki değerlerden biri olabilir tablo.Diğer değerleri 0 olarak işlenir.

Değer

Output

0 (Varsayılan)

Hiçbir virgül her üç basamak ondalık noktasının solunda ve ondalık noktanın sağında iki basamaklı; örneğin, 4235.98.

1

Virgül ondalık noktanın sağında iki basamak ve her üç basamak ondalık noktasının soluna; örneğin, 3,510.92.

2

Hiçbir virgül her üç basamak ondalık noktasının solunda ve ondalık noktanın sağındaki dört basamak; örneğin, 4235.9819.

126

Stil char(n) veya varchar(n) dönüştürürken 2 ile aynıdır

XML stil

Zamanexpressionisxml, stylegösterilen aşağıdaki değerlerden biri olabilir tablo.Diğer değerleri 0 olarak işlenir.

Değer

Output

0 (Varsayılan)

Varsayılan ayrıştırma davranışını anlamsız beyaz boşluğu yoksayar ve bir iç DTD alt küme küme kümesi için izin kullanırlar.

NoteNote:
İçin dönüştürürkenxmlveri türüSQL Serveranlamsız boşluk gerçekleştirilir farklı farklı XML 1.0.Daha fazla bilgi için bkz:XML örnekleri oluşturma.

1

Anlamsız boşlukları korur.Bu stil ayar, varsayılan ayarlarXML: space işleme aynı davranmasına gibi XML: space "korumak" = belirtilen yerine.

2

Etkinleştirme sınırlı iç DTD alt küme küme işlem.

Etkinleştirilirse, sunucu, geçerlik doðrulamayan ayrıştırma işlemleri gerçekleştirmek için bir iç DTD alt küme küme kümede sağlanan aşağıdaki bilgileri kullanabilirsiniz.

  • Öznitelikler için varsayılan değerleri uygulanır.

  • İç varlık başvuruları giderilmiş ve genişletilmiştir.

  • DTD içerik modeli sözdizimsel doğruluğu için denetlenir.

Çözümleyici dış DTD alt göz ardı eder., Ayrıca görmek için XML bildirim değerlendirmek değil mistandaloneözniteliğidir kümeEvet veya yok , ancak bunun yerine olduğu gibi bir tek başına. örnek XML Ayrıştırma

3

Anlamsız boşluk korumak ve sınırlı iç DTD alt küme küme işlem sağlar.

İkili stilleri

Zamanexpressionisbinary(n),varbinary(n),char(n), orvarchar(n),stylegösterilen aşağıdaki değerlerden biri olabilir tablo.Tabloda listelenen stil değerler bir hata verir.

Değer

Output

0 (Varsayılan)

Bayt ikili veya ASCII karakterleri ikili bayt ASCII karakterlere çevirir.1: 1, Her karakter veya bayt dönüştürülür.

,data_typeikili bir türü, karakter 0 x eklenen sol sonucu.

1, 2

,data_typeikili bir tür karakteri bir ifade. ifade olmalıdırThe expression must be composed of an even number of hexadecimal digits (0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F, a, b, c, d, e, f).,styleolan ayarlamak 1 0 x olmalıdır karakter ilk iki karakteri ifade.ifade Tek sayıda karakter içeren veya karakterlerden herhangi birini geçersiz olması durumunda bir hata ortaya çıkar.

Dönüştürülmüş ifade uzunluğunu uzunluğundan daha büyükdata_typesonucu hemen kesilir.

Sabit uzunluktadata_typessonra da dönüştürülmüş sonuç sıfır eklenmiş sağa sonuç. sahip daha büyük olan

İfade, data_type karakter türünü, ikili bir ifade olmalıdır.İkili her karakteri iki onaltılık karakterlere dönüştürülür.Dönüştürülmüş ifade uzunluğunu büyüktür:data_typeuzunluğu doğru fazlalıkları.

,data_typebir boyutta düzeltme karakter türü ve dönüştürülen sonuçları uzunluğunu, uzunluğu küçüktürdata_typeSağa çift sayıda korumak için dönüştürülmüş ifadenin boşluk eklenir; onaltılı basamak.

Karakterleri 0 x için dönüştürülmüş sonuç solundaki eklenecekstyle1.

Kapalı dönüşümlerini

Örtük dönüştürmeler, CONVERT veya CAST işlevini ayarlamadan oluşan bu dönüşümler var.Açık dönüştürme belirtilmesi CAST veya Çevir işlev gerektiren bu dönüşümler var.Aşağıdaki örnek, tüm açık ve kapalı bir veri türü dönüştürmeleri için izin gösterirSQL Serversistem tarafından sağlanan veri türleri.Bunlarxml,bigint, vesql_variant.Atama üzerinde dolaylı dönüştürme yoksql_variantveri türüne örtük dönüştürme ancaksql_variant.

Data type conversion table

Zaman arasında dönüştürmedatetimeoffsetve karakter türlerichar,varchar,nchar, venvarchardönüştürülmüş saat dilimini mahsup bölümü çift rakam SA ve aa için uymanız gereken örnek, - 08:00.

Not

Çünkü Unicode verilerini her zaman çift sayıda bayt kullanır ve dönüştürdüğünüzde dikkatli kullanınbinaryorvarbinaryya da Unicode desteklenen veri türleri.Örneğin, aşağıdaki dönüştürme 41 onaltılık değerini döndürür; 4100 geri verir: SELECT CAST(CAST(0x41 AS nvarchar) AS varbinary).

Büyük değer veri türleri

Büyük değer veri türleri gösteren küçük dekiler gibi aynı kapalı ve açık dönüştürme davranış özelliklevarchar,nvarcharvevarbinaryveri türü.Ancak, aşağıdaki yönergeleri dikkate almanız gerekir:

  • Dönüştürmeimagetovarbinary(max)tersi durumda bir kapalı dönüştürme ve böylece olan arasında dönüştürmetextvevarchar(max), ventextvenvarchar(max).

  • Dönüştürme büyük değer veri türleri, gibivarchar(max), çok küçük bir karşılık gelen veri türü, örneğinvarcharbir kapalı dönüştürme değil ancak kesme büyük değer ise daha küçük veri türünü. da belirtilen süre çok büyük gerçekleşir

  • Dönüştürmevarchar,nvarchar, orvarbinaryilgili büyük değer veri türleri dolaylı olarak gerçekleştirilir.

  • Dönüştürmesql_variantbüyük değer veri türleri için veri türü olan açık bir dönüştürme.

  • Büyük değer veri türleri olamaz dönüştürülürsql_variantveri türü.

For information about how to convert Microsoft .NET Framework common language runtime (CLR) user-defined types, see Kullanıcı tanımlı türler üzerinde işlem gerçekleştirme.Arasında dönüştürme hakkında daha fazla bilgi içinxmlveri türü, bkz:XML örnekleri oluşturma.

XML veri türü

Açıkça veya örtük atama,xmlveri türü bir dize veya ikili veri türü, içeriği,xmlveri türü seri bağlı bir dizi kural.Bu kurallar hakkında bilgi için bkz:XML veri'seri hale getirme.CLR kullanıcı tanımlı türü XML'den atama hakkında bilgi için bkz:Kullanıcı tanımlı türler üzerinde işlem gerçekleştirme.Dönüştürmek için diğer veri türleri hakkında bilgi içinxmlveri türü, bkz:XML örnekleri oluşturma.

metin ve resim veri türleri

İçin otomatik veri türüne dönüştürme desteklenmeztextveimageveri türü.Açıkça dönüştürebilirtextkarakter verileri, veri veimageverileribinaryorvarbinary, ancak en fazla uzunluk 8000 bayt.Harfleri içeren bir karakter ifade dönüştürmek istediğiniz gibi yanlış bir dönüştürme çalışırsanız, birint,SQL Serversayı bir hata iletisi.

Çıkış harmanlama

CAST ve CONVERT çıkış karakteri olduğunda dize, ve giriş karakteri dize, çıktı aynı harmanlama ve harmanlama etiket giriş olarak bulunur.Giriş bir karakter dizesi değil, veritabanının varsayılan harmanlama ve coercible varsayılan harmanlama etiket çıkışı vardır.Daha fazla bilgi için bkz:Harmanlama önceliği (Transact-SQL).

Çıktı için farklı bir harmanlama atamak için CAST veya CONVERT işlevinin sonucu ifade COLLATE yan tümcesini uygulanır.Örneğin:

SELECT CAST('abc' AS varchar(5)) COLLATE French_CS_AS

Kesiliyor ve sonuçlar yuvarlama

Karakter ya da ikili ifadeler dönüştürürken ( char, nchar, nvarchar, varchar, binary, ya da varbinary) için bir ifade farklı bir veri türü, veriler, yalnızca kısmen görüntülenen kesildi ya da sonuç görüntüleme. çok kısa olduğu için hata verirDönüştürmeleri içinchar,varchar,nchar,nvarchar,binary, andvarbinaryaşağıdaki gösterilen dönüştürme haricinde kesilir tablo.

Veri türünden

Veri türü

Sonuç

int, smallint veya tinyint

char

*

 

varchar

*

 

nchar

E

 

nvarchar

E

money,smallmoney,numeric,decimal,float, orreal

char

E

 

varchar

E

 

nchar

E

 

nvarchar

E

* = Uzunluk sonucu görüntülemek için çok kısa.E = hata sonucu görüntülemek için çok kısa olduğundan döndürüldü.

SQL Server tek gidiş dönüş dönüştürme, özgün veri türünden bir veri türü dönüştürme ve yeniden geri dönüştürme, sürüm sürüm arasında aynı değerleri verim güvence altına alır.Aşağıdaki örnek, böyle bir gidiş dönüş dönüştürme gösterir:

DECLARE @myval decimal (5, 2)
SET @myval = 193.57
SELECT CAST(CAST(@myval AS varbinary(20)) AS decimal(10,5))
-- Or, using CONVERT
SELECT CONVERT(decimal(10,5), CONVERT(varbinary(20), @myval))

Not

Do not try to construct binary values and then convert them to a data type of the numeric data type category.SQL Server does not guarantee that the result of a decimal or numeric data type conversion to binary will be the same between versions of SQL Server.

Aşağıdaki örnek, görüntülemek için çok küçük bir sonuç ifadesi gösterilir.

USE AdventureWorks;
GO
SELECT c.FirstName, c.LastName, SUBSTRING(c.Title, 1, 25) AS Title, CAST(e.SickLeaveHours AS char(1)) AS 'Sick Leave'
FROM HumanResources.Employee e JOIN Person.Contact c ON e.EmployeeID = c. ContactID
WHERE NOT EmployeeID >5

Here is the result set.

FirstName      LastName         Title                  Sick Leave
---------      ---------      -------------------   -----------
Gustavo        Achong         Mr.                   *
Catherine      Abel           Ms.                   *
Kim            Abercrombie    Ms.                   *
Humberto       Acevedo        Sr.                   *
Pilar          Ackerman       Sra.                  *

(5 row(s) affected)

Ondalık basamak farklı veri türlerine dönüştürün, sonuç değerini bazen kesilir ve bazen yuvarlanır.Aşağıdaki tablo davranışı gösterir.

Kimden:

Amacı

Davranış

numeric

numeric

Round

numeric

int

Kes

numeric

money

Round

money

int

Round

money

numeric

Round

float

int

Kes

float

numeric

Round

float

datetime

Round

datetime

int

Round

Örneğin, aşağıdaki dönüştürme sonucudur10:

SELECT CAST(10.6496 AS int)

Veri türlerinin hedef veri türü kaynak veri türüne göre daha az sayıda ondalık basamağı olan dönüştürdüğünüzde, değer yuvarlanır.Örneğin, aşağıdaki dönüştürme sonucudur$10.3497:

SELECT CAST(10.3496847 AS money)

SQL Server returns an error message when nonnumeric char, nchar, varchar, or nvarchar data is converted to int, float, numeric, or decimal.SQL Server also returns an error when an empty string (" ") is converted to numeric or decimal.

SQL Server 2005 ve daha sonra sürümlerinde Dönüşümlerini mı Nondeterministic belirli bir tarih

InSQL Server2000, tarih ve saat dönüştürme dizesine işaretlenir gibi belirli.Ancak, bu stiller için aşağıdaki listede doğru değil tablo.For these styles, the conversions depend on the language settings.SQL Server 2005 and later versions mark these conversions as nondeterministic.

Aşağıdaki tabloda, dize datetime dönüştürme nondeterministic olan stilleri listeler.

100 Altındaki tüm stilleri1

106

107

109

113

130

1 With the exception of styles 20 and 21

Örnekler

C.Her ikisi de ATAMA ve Çevir

Her örneği olan bu ürünler için ürün adını alan bir3, liste fiyatını dönüştürür ve ilk rakam, kendiListPricetoint.

-- Use CAST
USE AdventureWorks;
GO
SELECT SUBSTRING(Name, 1, 30) AS ProductName, ListPrice
FROM Production.Product
WHERE CAST(ListPrice AS int) LIKE '3%';
GO

-- Use CONVERT.
USE AdventureWorks;
GO
SELECT SUBSTRING(Name, 1, 30) AS ProductName, ListPrice
FROM Production.Product
WHERE CONVERT(int, ListPrice) LIKE '3%';
GO

B.Aritmetik işleçlerle CAST kullanma

Aşağıdaki örnek, bir tek sütun hesaplama hesaplar ( Computed) tarafından yılın tarihini satış bölme ( SalesYTD) komisyon yüzdesi olarak ( CommissionPCT).Bu sonuç dönüştürülmesi için birintveri türü sonra küçük en yakın tam sayı.

USE AdventureWorks;
GO
SELECT CAST(ROUND(SalesYTD/CommissionPCT, 0) AS int) AS 'Computed'
FROM Sales.SalesPerson 
WHERE CommissionPCT != 0;
GO

Here is the result set.

Hesaplanan

------

379753754

346698349

257144242

176493899

281101272

0

301872549

212623750

298948202

250784119

239246890

101664220

124511336

97688107

(14 satırları etkilenen)

C.CAST bir arada kullanmak

Aşağıdaki örnek, noncharacter, nonbinary ifadeleri kullanarak birleştirirCAST.

USE AdventureWorks;
GO
SELECT 'The list price is ' + CAST(ListPrice AS varchar(12)) AS ListPrice
FROM Production.Product
WHERE ListPrice BETWEEN 350.00 AND 400.00;
GO

Here is the result set.

ListPrice

------------------

Liste fiyatı 357.06 olan

Liste fiyatı 364,09 olan

Liste fiyatı 364,09 olan

Liste fiyatı 364,09 olan

Liste fiyatı 364,09 olan

(5 satırları etkilenen)

D.CAST daha okunabilir metin oluşturmak için kullanma

Aşağıdaki örnekCASTdönüştürmek için seçim listesi,Namesütunu birchar(10)sütun.

USE AdventureWorks;
GO
SELECT DISTINCT CAST(p.Name AS char(10)) AS Name, s.UnitPrice
FROM Sales.SalesOrderDetail s JOIN Production.Product p on s.ProductID = p.ProductID
WHERE Name LIKE 'Long-Sleeve Logo Jersey, M';
GO

Here is the result set.

Birim adı

---------- ---------------------

Uzun Sleev 31.2437

Uzun Sleev 32,4935

Uzun Sleev 49,99

(3 satırları etkilenen)

E.CAST LIKE yan tümcesinde kullanma

Dönüştüren aşağıdaki örnekmoneysütunSalesYTDiçin birintve daha sonra birchar(20), BT ile kullanılacak şekilde sütunLIKEyan tümce.

USE AdventureWorks;
GO
SELECT p.FirstName, p.LastName, s.SalesYTD, s.SalesPersonID
FROM Person.Contact p JOIN Sales.SalesPerson s ON p.ContactID = s.SalesPersonID
WHERE CAST(CAST(s.SalesYTD AS int) AS char(20)) LIKE '2%';
GO

Here is the result set.

Adı soyadı SalesYTD SalesPersonID

---------------- ------------------- ---------------- -------------

Carol Elliott 2811012.7151 279

Julie Estes 219088.8836 288

Janeth Esteves 2241204.0424 289

(3 satırları etkilenen)

F.Kullanarak CONVERT veya CAST yazılı XML

Kullanarak gösteren bazı örnekler CONVERT kullanılarak yazılan bir XML biçimine dönüştürmek için aşağıdaXML veri türü.

Bu örnek, bir dize boşluk ve metin biçimlendirme yazılı XML'de dönüştürür ve tüm anlamsız boşluk (düğümler arasında beyaz boşluk sınırı) kaldırır:

CONVERT(XML, '<root><child/></root>')

Bu örnek, benzer bir dize boşluk, metin ve biçimlendirme yazılı XML'de dönüştürür ve anlamsız boşluk (düğümler arasında beyaz boşluk sınırı) korur:

CONVERT(XML, '<root>          <child/>         </root>', 1)

Bu örnek, bir dize boşluk, metin ve biçimlendirme yazılı XML'de çevirir:

CAST('<Name><FName>Carol</FName><LName>Elliot</LName></Name>'  AS XML)

Daha fazla örnek için bkz:XML örnekleri oluşturma.

G.Kullanarak CAST ve CONVERT datetime veri

Aşağıdaki örnek, geçerli tarihi görüntüler, kullanırCASTgeçerli tarih ve saati bir karakter veri türü ve daha sonra kullanım için değiştirmeCONVERT, saat ve tarihi görüntülemekISO 8901Format.

SELECT 
   GETDATE() AS UnconvertedDateTime,
   CAST(GETDATE() AS nvarchar(30)) AS UsingCast,
   CONVERT(nvarchar(30), GETDATE(), 126) AS UsingConvertTo_ISO8601  ;
GO

Here is the result set.

UnconvertedDateTime UsingCast UsingConvertTo_ISO8601

----------------------- ------------------------------ ------------------------------

2006-04-18 09:58:04.570 18 Nisan 2006 9: 58'de 2006 - 04 - 18T09:58:04.570

(1 satırları etkilenen)

Aşağıdaki örnek yaklaşık olarak önceki örnekte tersidir.Örnek bir tarih ve saat kullandığı karakter veri olarak görüntülerCASTkarakter verileri değiştirmek içindatetimeveri türünü ve sonra kullanırCONVERTkarakter verileri değiştirmek içindatetimeveri türü.

SELECT 
   '2006-04-25T15:50:59.997' AS UnconvertedText,
   CAST('2006-04-25T15:50:59.997' AS datetime) AS UsingCast,
   CONVERT(datetime, '2006-04-25T15:50:59.997', 126) AS UsingConvertFrom_ISO8601 ;
GO

Here is the result set.

UnconvertedText UsingCast UsingConvertFrom_ISO8601

----------------------- ----------------------- ------------------------

25T15:50:59.997 2006-04-25 2006 - 04 - 2006-04-25 15:50:59.997 15:50:59.997

(1 satırları etkilenen)

H.İkili ve karakter veri Çevir'i kullanma

Aşağıdaki örnekler, farklı stilleri kullanarak ikili ve karakter veri dönüştürme sonuçlar

--Convert the binary value 0x4E616d65 to a character value.
SELECT CONVERT(char(8), 0x4E616d65, 0) AS 'Style 0, binary to character'

Here is the result set.

0, İkili karakter stili

----------------------------

Name

(1 satırları etkilenen)

--The following example shows how Style 1 can force the result
--to be truncated. The truncation is caused by
--including the characters 0x in the result.
SELECT CONVERT(char(8), 0x4E616d65, 1) AS 'Style 1, binary to character'

Here is the result set.

1, İkili karakter stili

------------------------------

0x4E616D

(1 satırları etkilenen)

--The following example shows that Style 2 does not truncate the
--result because the characters 0x are not included in
--the result.
SELECT CONVERT(char(8), 0x4E616d65, 2) AS 'Style 2, binary to character'

Here is the result set.

2, İkili karakter stili

------------------------------

4E616D65

(1 satırları etkilenen)

--Convert the character value 'Name' to a binary value.
SELECT CONVERT(binary(8), 'Name', 0) AS 'Style 0, character to binary'

Here is the result set.

0, İkili karakter stili

----------------------------------

0x4E616D6500000000

(1 satırları etkilenen)

SELECT CONVERT(binary(4), '0x4E616D65', 1) AS 'Style 1, character to binary'

Here is the result set.

1, İkili karakter stili

----------------------------------

0x4E616D65

(1 satırları etkilenen)

SELECT CONVERT(binary(4), '4E616D65', 1) AS 'Style 2, character to binary'

Here is the result set.

2, İkili karakter stili

----------------------------------

0x4E616D65

(1 satırları etkilenen)