| 
 | 
| 
 
Точность типа Decimal 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  Есть хранимая процедура на SQL-сервере (MS SQL 2000), возвращающая значение типа decimal(18, 4) (4 знака после запятой) (курс валюты). Вот её текст: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. И есть функция на C# (VS.NET 2002), которая эту процедуру вызывает: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. В приведённом виде функция возвращает значение, ОКРУГЛЁННОЕ до целого!!! Но если вместо строки Cmd.Parameters["@Rate"].Direction = ParameterDirection.Output; написать Cmd.Parameters["@Rate"].Direction = ParameterDirection.InputOutput, а самому параметру @Rate присвоить указанное в комментарии дробное значение, то функция заработает так, как нужно. Мало того, если параметру присвоить десятичное значение не с четырьмя знаками после запятой, а, к примеру, с двумя, то и результат функции окажется округлённым до двух знаков. Я так понимаю, что надо каким-то образом указать, сколько знаков после запятой необходимо хранить в параметре. Только вот как это сделать я не нашёл. Может кто подскажет... Спасибо. ПС: Сама хранимая процедура работает правильно (проверял через Query Analyser). ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 20.08.2003, 16:34 | 
  
  
  
   | 
||
| 
 | 

start [/forum/topic.php?fid=17&fpage=132&tid=1354264]:  | 
    0ms | 
get settings:  | 
    9ms | 
get forum list:  | 
    14ms | 
check forum access:  | 
    4ms | 
check topic access:  | 
    4ms | 
track hit:  | 
    45ms | 
get topic data:  | 
    14ms | 
get forum data:  | 
    3ms | 
get page messages:  | 
    67ms | 
get tp. blocked users:  | 
    1ms | 
| others: | 16ms | 
| total: | 177ms | 

| 0 / 0 | 

    Извините, этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
    
    
    «На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
    
    
    ... ля, ля, ля ...