SQL'de BIGINT alan türünün sınırı nedir?SQL'de BIGINT alan türünün sınırı nedir?
100000235882380 veya 100000466411115 kabul edilebilir midir? int, bigint, smallint, and tinyint (Transact-SQL) göre
SQL'de BIGINT alan türünün sınırı nedir?SQL'de BIGINT alan türünün sınırı nedir?
100000235882380 veya 100000466411115 kabul edilebilir midir? int, bigint, smallint, and tinyint (Transact-SQL) göre
kullandığınız RDBMS'in kılavuzuna bakın. Tüm sistemlerde aynı olmayabilir.
MySQL:
https://dev.mysql.com/doc/refman/5.7/en/integer-types.html
PostgreSQL:
https://www.postgresql.org/docs/10/static/datatype-numeric.html
SQL Sunucusu (Transact-SQL):
https://docs.microsoft.com/en-us/sql/t-sql/data-types/int-bigint-smallint-and-tinyint-transact-sql
SQL Server dışında bir BIGINT türü olan başka bir RDMS var mı? Belki benzer bir tür ama OP'in SQL Server kullanıyor olduğu sonucuna varmak adil. –
MySQL, Postgres ... SQL Server kullanıcıları yerine * SQL Server dışındaki BIGINT * ile daha fazla RDBMS kullanıcısı var. –
İyi nokta! Düzeltilmeye hazırlanıyorum ... :) –
Evet (Yani facebook dan kimliğidir):
Bigint
-2^63 (-9,223,372,036,854,775,808) to 2^63-1 (9,223,372,036,854,775,807)
Endişelenecek bir şey yok. BIGINT sahip olduğunuzdan çok daha büyük değerler saklayabilir.
En az 9,223,372,036,854,775,807'ye kadar.
RDBMS'ye bağlıdır. Örneğin, bir BIGINT'in maxiumum değerleri, MySQL üzerinde 9223372036854775807
(imzalı için) veya 18446744073709551615
(imzasız için) şeklindedir.
Tüm ayrıntılar için belgelerin Numeric Types bölümüne bakın.
Bunun, MySQL için olduğunu unutmayın, diğer veritabanı platformları aynı sınırlara sahip olabilir veya olmayabilir (alas, OP hangi SQL db'nin belirtildiğini belirtmedi). – Piskvor
@Piskvor - İyi bir çağrı, benim tarafımdan çok uzak bir varsayım. Cevabımı güncelleyeceğim. :-) –
-9 223 372 036 854 775 808 223 372 036 854 775 807
Ama bu google kolayca bulunabilir 9.
-1: Kullandığınız RDBMS'den bahsetmeden ve yanıt muhtemelen RTFM tarafından veya bir arama motoru kullanılarak kolayca yapılabilir. – bjoernz
Taşınabilirlik için, bunun yerine bir dize kullanmak isteyebilirsiniz. Benim durumumda, Base64 kullanarak ikişer tamamlayıcı değerini (BigInteger.toBytes) kodladım ve veritabanına erişirken bunu araştırdım. –