Тип Column
имеет свойство под названием DataType
, которое содержит следующие биты информации, которые вы ищете:
int maxLen = column.DataType.MaximumLength;
int maxPrecision = column.DataType.NumericPrecision;
int numericScale = column.DataType.NumericScale;
и так далее. Очевидно, что не все поля заполнены для каждого типа - числовая шкала на VARCHAR не имеет смысла ....
Проверьте документы MSDN по точности, масштабу и максимальной длине . Основное предложение таково:
Точность - это количество цифр в
число. Масштаб это количество цифр
справа от десятичной точки в
число. Например, число 123,45
имеет точность 5 и масштаб 2.
Таким образом, DECIMAL(12,4)
имеет точность из 12 цифр (всего), из которых 4 после десятичной точки ( шкала ) и, следовательно, 8 цифр перед десятичной точка.
Но это те поля, которые вы ищете, верно?