Her işlev bir ifadeyi belirli bir veri türüne dönüştürür.
Söz dizimi
CBool(expression)CByte(expression)CCur(expression)CDate(expression)CDbl(expression)CDec(expression)CInt(expression)CLng(expression)CSng(expression)CStr(expression)CVar(expression)
Gerekli expression bağımsız değişken herhangi bir dize veya sayısal ifadedir.
İade türleri
İşlev adı, aşağıdaki tabloda gösterildiği gibi dönüş türünü belirler:
| İşlev | Dönüş türü | Bağımsız değişken aralığı expression |
|---|---|---|
CBool |
Boolean |
Geçerli herhangi bir dize veya sayısal ifade. |
CByte |
Byte |
0 ile 255. |
CCur |
Currency |
-922,337,203,685,477.5808 ile 922,337,203,685,477.5807. |
CDate |
Date |
Geçerli herhangi bir tarih ifadesi. |
CDbl |
Double |
-1.79769313486231E308 negatif değerler için için -4.94065645841247E-324 ; 4.94065645841247E-324 pozitif değerler için için 1.79769313486232E308 . |
CDec |
Decimal |
+/-79,228,162,514,264,337,593,543,950,335 sıfır ölçekli sayılar veya ondalık basamağı olmayan sayılar için. Ondalık basamaklı sayılar 28 için aralık .+/-7.9228162514264337593543950335 Mümkün olan en küçük sıfır olmayan sayı .0.0000000000000000000000000001 |
CInt |
Integer |
-32,768 Kesirler 32,767yuvarlanır. |
CLng |
Long |
-2,147,483,648 Kesirler 2,147,483,647yuvarlanır. |
CSng |
Single |
-3.402823E38 negatif değerler için için -1.401298E-45 ; 1.401298E-45 pozitif değerler için için 3.402823E38 . |
CStr |
String |
Verilen değer, bağımsız değişkene expression bağlıdır. |
CVar |
Variant |
Sayısal değerlerle Double aynı aralık. Sayısal olmayan değerlerle String aynı aralık. |
Notlar
expression Girilen işleve iletilen değer, dönüştürmekte olduğunuz veri türü aralığının dışındaysa hata oluşur.
Genel olarak, bir işlemin sonucunun varsayılan tür yerine belirli bir veri türünü kullanması gerektiğini göstermek için veri türü dönüştürme işlevlerini kullanarak kodunuzu belgeleyebilirsiniz. Örneğin, normalde tek duyarlıklı, çift duyarlıklı veya tamsayı aritmetiğinin gerçekleşeceği durumlarda para birimi aritmetiğini zorlamak için kullanın CCur .
Bir veri türünden diğerine yerel ayara duyarlı dönüştürmeler sağlamak yerine veri türü dönüştürme işlevlerini Val kullanın. Örneğin, uygulamayı kullandığınızda CCurAccess, bilgisayarınızın yerel ayarına bağlı olarak farklı ondalık ayırıcıları, binlik ayırıcıları ve para birimi seçeneklerini tanır.
Kesirli kısım tam 0.5olduğunda ve CIntCLng her zaman en yakın çift sayıya yuvarlayın. Örneğin, 0.5 'ye ve 1.5 'ye 02yuvarlar.
CInt ve CLng bir sayının Fix kesirli kısmını yuvarlamak yerine kesen ve Int işlevlerinden farklıdır.
Fix ve Int ayrıca her zaman ilettiğiniz türden bir değer döndürür.
IsDate Tarihe veya saate dönüştürülüp dönüştürülemeyeceğini date saptamak için işlevi kullanın.
CDate Kabul edilebilir tarih aralığına giren bazı sayıların yanı sıra tarih ve saat değişmez değerlerini tanır. Bir sayıyı tarihe dönüştürdüğünüzde, tam sayı kısmı tarihe dönüşür. Herhangi bir kesirli bölüm, günün gece yarısından başlayan bir saati haline gelir.
CDate Sistem yerel ayarınıza göre tarih biçimlerini tanır. Tanınan tarih ayarlarından farklı bir biçim sağlarsanız Access gün, ay ve yıl için doğru sırayı belirleyemeyebilir. Buna ek olarak, haftanın günü dizesini de içeriyorsa uzun tarih biçimini tanımaz.
Bu CVDate işlev ayrıca, Visual Basic'in önceki sürümleriyle uyumluluk açısından da kullanılabilir. 'nin CVDate söz dizimi işlevle CDate aynıdır. Ancak, CVDate gerçek Date tür yerine kimin alt türü olduğunu Date döndürürVariant. Access artık kendine özgü Date bir tür içerdiğinden, artık ihtiyacınız yoktur CVDate. Aynı etkiyi bir ifadeyi a'ya Date dönüştürüp ' Variantye atayarak da elde edebilirsiniz. Bu teknik, diğer içsel tiplerin eşdeğer Variant alt tiplerine dönüştürülmesi ile tutarlıdır.
Not
İşlev CDec ayrık bir veri türü döndürmez. Bunun yerine, her zaman değeri bir Decimal alt türe dönüştürülen bir Variant değer döndürür.
Sorgu örnekleri
| Expression | Sonuçlar |
|---|---|
SELECT SalePrice, FinalPrice, CBool(SalePrice > FinalPrice) AS Expr1 FROM productSales; |
Ve FinalPrice'yi verir SalePrice ve 'den FinalPricebüyük olup olmadığını SalePrice değerlendirir. Doğruysa ve 0 yanlışsa döndürür-1. |
SELECT ProductID, CByte(Quantity) AS Expr1 FROM productSales; |
Alandaki değerleri Quantity döndürürProductID, 'ye Bytedönüştürür ve bunları sütunda Expr1 görüntüler. |
SELECT ProductID, CDate(DateofSale) AS Expr1 FROM productSales; |
Alandaki değerleri DateofSale döndürürProductID, 'ye Datedönüştürür ve bunları sütunda Expr1 görüntüler. |
SELECT ProductID, CDbl(Discount) AS Expr1 FROM productSales; |
Alandaki değerleri Discount döndürürProductID, 'ye Doubledönüştürür ve bunları sütunda Expr1 görüntüler. |
SELECT ProductID, CInt(Discount) AS Expr1 FROM productSales; |
Alandaki değerleri Discount döndürürProductID, 'ye Integerdönüştürür ve bunları sütunda Expr1 görüntüler. |
SELECT ProductID, CLng(Discount) AS Expr1 FROM productSales; |
Alandaki değerleri Discount döndürürProductID, 'ye Longdönüştürür ve bunları sütunda Expr1 görüntüler. |
SELECT ProductID, CSng(Discount) AS Expr1 FROM productSales; |
Alandaki değerleri Discount döndürürProductID, 'ye Singledönüştürür ve bunları sütunda Expr1 görüntüler. |
SELECT ProductID, CStr(Discount) AS Expr1 FROM productSales; |
Alandaki değerleri Discount döndürürProductID, 'ye Stringdönüştürür ve bunları sütunda Expr1 görüntüler. |
SELECT ProductID, CVar(Discount) AS Expr1 FROM productSales; |
Sayısal ProductIDDiscount değerleri döndürür, 'ye Doubledönüştürür ve sayısal olmayan değerleri 'ye Stringdönüştürür. |
VBA örnekleri
Not
Aşağıdaki örneklerde bu işlevin bir Visual Basic for ApplicationsVisual Basic for Applications (VBA) modülünde nasıl kullanılacağı gösterilmektedir. VBA ile çalışma hakkında daha fazla bilgi için Access VBA başvurusuna bakın.
CBool işlevi
Bu örnekte, bir ifadeyi CBool .Boolean İfade sıfır olmayan bir değer CBool değerlendirirse döndürür True; aksi takdirde False.
Dim A, B, Check
A = 5: B = 5 ' Initialize variables.
Check = CBool(A = B) ' Check contains True.
A = 0 ' Define variable.
Check = CBool(A) ' Check contains False.
CByte işlevi
Bu örnekte, bir ifadeyi CByte .Byte
Dim MyDouble, MyByte
MyDouble = 125.5678 ' MyDouble is a Double.
MyByte = CByte(MyDouble) ' MyByte contains 126.
CCur işlevi
Bu örnekte, bir ifadeyi CCur .Currency
Dim MyDouble, MyCurr
MyDouble = 543.214588 ' MyDouble is a Double.
MyCurr = CCur(MyDouble * 2)
' Convert result of MyDouble * 2 (1086.429176) to a
' Currency (1086.4292).
CDate işlevi
Bu örnek, bir dizeyi CDate .Date Genel olarak, bu örnekte gösterildiği gibi tarih ve saatlerin dize olarak sabit kodlanması önerilmez. Bunun yerine ve gibi tarih ve saat sabit değerlerini #2/12/1969##4:45:23 PM#kullanın.
Dim MyDate, MyShortDate, MyTime, MyShortTime
MyDate = "February 12, 1969"
' Convert to Date data type.
MyShortDate = CDate(MyDate)
MyTime = "4:35:47 PM"
' Convert to Date data type.
MyShortTime = CDate(MyTime)
CDbl işlevi
Bu örnekte, bir ifadeyi CDbl .Double
Dim MyCurr, MyDouble
MyCurr = CCur(234.456784)
' Convert result to a Double.
MyDouble = CDbl(MyCurr * 8.2 * 0.01)
CDec işlevi
Bu örnekte, CDec sayısal bir değeri .Decimal
Dim MyDecimal, MyCurr
MyCurr = 10000000.0587 ' MyCurr is a Currency.
MyDecimal = CDec(MyCurr) ' MyDecimal is a Decimal.
CInt işlevi
Bu örnekCInt, bir değeri .Integer
Dim MyDouble, MyInt
MyDouble = 2345.5678 ' MyDouble is a Double.
MyInt = CInt(MyDouble) ' MyInt contains 2346.
CLng işlevi
Bu örnekCLng, bir değeri .Long
Dim MyVal1, MyVal2, MyLong1, MyLong2
MyVal1 = 25427.45
MyVal2 = 25427.55 ' MyVal1, MyVal2 are Doubles.
MyLong1 = CLng(MyVal1)
' MyLong1 contains 25427.
MyLong2 = CLng(MyVal2)
' MyLong2 contains 25428.
CSng işlevi
Bu örnekCSng, bir değeri .Single
Dim MyDouble1, MyDouble2, MySingle1, MySingle2
' MyDouble1, MyDouble2 are Doubles.
MyDouble1 = 75.3421115: MyDouble2 = 75.3421555
MySingle1 = CSng(MyDouble1)
' MySingle1 contains 75.34211.
MySingle2 = CSng(MyDouble2)
' MySingle2 contains 75.34216.
CStr işlevi
Bu örnekte, CStr sayısal bir değeri .String
Dim MyDouble, MyString
MyDouble = 437.324 ' MyDouble is a Double.
MyString = CStr(MyDouble)
' MyString contains "437.324".
CVar işlevi
Bu örnekte, bir ifadeyi CVar .Variant
Dim MyInt, MyVar
MyInt = 4534 ' MyInt is an Integer.
MyVar = CVar(MyInt & "000")
' MyVar contains the string 4534000.