2011-08-17 23 views

cevap

7

this similar question'da verilen cevaba bakın. Bildiğim kadarıyla, aradığınız cevabı programsal olarak bulmak için hiçbir yol yoktur.

Başka bir yanıt üzerine gönderdiğiniz yorumlara dayanarak, bu yalnızca birden fazla yere karşılık olarak değerlerinizi tek bir yerde değiştirmenize izin verir. dbo.maxbigint(): Bunu çağırarak istediğiniz yere

CREATE FUNCTION maxbigint() RETURNS bigint 
AS 
BEGIN 
    RETURN CAST(0x7FFFFFFFFFFFFFFF AS bigint) 
END 
GO 

Sonra kullanabilirsiniz:

+0

Evet! Bu doğru! Bu çözümü düşündüm ama bunu yapabilmek için yerleşik bir şey olmadığından emin olmalıydım. –

15

bir Bigint hep desteklemeye gidiyor

-2^63 (-9,223,372,036,854,775,808) to 2^63-1 (9,223,372,036,854,775,807) 

SQL Server TSQL sabit olarak bu tanımlamıyor, ama her zaman -2^63 ile 2^63 olacak - 1

Ref .: int, bigint, smallint, and tinyint (Transact-SQL)

+1

bigint her zaman 8 bayt olacaktır. HER ZAMAN. –

+0

Yani bu bigint ile tam olarak ne yapıyorsun? –

+7

@Corovei - mevcut bir veri türünü değiştirmeden önce "HUGEint" gibi yeni bir veri türü ekleyecekler. – JNK

3

Ayrıca basit bir kullanıcı maksimum bigint değerini verir tanımlı fonksiyon oluşturabilir.

İlgili konular