Есть ли способ получить максимальное значение, которое может быть сохранено в bigint без его жесткого кодирования?max значение представлено bigint
Есть ли функция или константа, которая возвращает/содержит это значение?
Есть ли способ получить максимальное значение, которое может быть сохранено в bigint без его жесткого кодирования?max значение представлено bigint
Есть ли функция или константа, которая возвращает/содержит это значение?
См. Ответ, указанный в this similar question. Насколько я знаю, нет никакого способа программно найти ответ, который вы ищете.
Основываясь на комментариях, которые вы отправили на другой ответ, это позволит вам только изменить свои значения в одном месте, а не в нескольких местах.
BIGINT всегда будет поддерживать
-2^63 (-9,223,372,036,854,775,808) to 2^63-1 (9,223,372,036,854,775,807)
SQL Server TSQL не определяет это как константа, но она всегда будет -2^63 до 2^63 - 1
bigint всегда будет 8 байтов. ВСЕГДА. –
Так что же вы делаете с этим bigint? –
@Corovei - они добавят новый тип данных, например 'HUGEint', прежде чем они изменят существующий тип данных. – JNK
Вы также можете создать простой определенная пользователем функция, которая возвращает максимальное значение BigInt:
CREATE FUNCTION maxbigint() RETURNS bigint
AS
BEGIN
RETURN CAST(0x7FFFFFFFFFFFFFFF AS bigint)
END
GO
Затем вы можете использовать его везде, где вы хотите, запустив его: dbo.maxbigint()
.
Да! Это правильно! Я тоже думал об этом решении, но мне нужно было убедиться, что для этого нет встроенных средств. –