Каков наилучший способ хранения nsdecimalnumbers в базе данных? Числовые типы, такие как float, real и double, отсутствуют, потому что важно сохранить точность использования валюты.
Две альтернативы, которые я рассмотрел, это строка и хранение двух целых: одна содержит мантиссу, а другая - экспоненту. Проблема, стоящая перед последним подходом, состоит в том, что я не вижу простого способа вытащить мантиссу и показатель степени из nsdecimalnumber. Я могу получить NSDecimal из NSDecimalNumber, но свойства мантиссы и экспоненты кажутся закрытыми! Возможно, я могу поменять число = (показатель мантиссы * 10 ^), но есть ли лучший способ сделать это?
Требование, которое у меня есть, заключается в том, что мне нужно выполнить некоторые операции с совокупной суммой над этим полем в базе данных. Если я сохраню в виде строки, возможно, выполнение этого вычисления будет более сложным. Мне все еще нужно написать пользовательскую функцию для суммирования по мантиссе и показателю степени в базе данных, так что, возможно, она все еще такая же тяжелая.
Редактировать: Я могу получить доступ к показателю степени, но мантисса хранится в странной манере ... тыкая в нее в отладчике, обнаруживает, что это массив коротких (целых).