![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Совмещение несовместимого! [D5, MSSQL]
MaXie © (2002-04-09 09:44:00)При помощи поля ввода с маской (элемент класса TMaskEdit) вводится кор.счет банка - 20 значащих цифр. Теперь это значение необходимо присвоить полю tbCorCheckBank таблицы tbBanks. Как это сделать?
Тип Double позволяет вместить 15..16 значащих цифр. Currency - содержит фиксированную запятую, отсекающую последние четыре разряда. Насколько я понимаю, тривиальный подход к присвоению значения ячейки столбца, как:
tbBanks.FieldByName("tbCorCheckBank").AsXXXX := ...
здесь не пройдет. Вот и возникает вопрос: каким образом совместить число типа Extended с типом numeric (на SQL Server)?
Anatoly Podgoretsky (2002-04-09 12:46:00) [1]На самом деле это не номер, а идентификатор, поэтому char
roottim (2002-04-09 11:35:00) [2]2wicked
я не помню в MSSQL типы.. но в оракле number(20)и более это нефиг делать!... хотя точно не знаю MSSQL работает SQL3
я так понимаю MaXie © не мог найти подходящий для этого тип!..
хотя в строковом виде.. это самое лучшее решение! особенно если впереди необходимо ставить "0"
MaXie (2002-04-09 10:55:00) [3]Просто хотелось бы вести ограничение на ввод символов в поле корсчета не только со стороны клиента, но и сервера - обеспечение взаимной независимости (развязки)!
>wicked
Отдельное спасибо за совет! :)
wicked (2002-04-09 10:33:00) [4]2 MaXie ©
ну и что?... это не смертельно, для этого есть средства проверки данных при вводе... а великая-могучая-теория-проектирования-бд говорит - "всё, что не будет участвовать в арифметических операциях, должно иметь строчный тип"... поверь, избежишь многих граблей...
Lusha (2002-04-09 10:30:00) [5]>MaXie
А кто Вам мешает не давать пользователю вводить символы отличные от цифр?
MaXie (2002-04-09 10:29:00) [6]С текстовым форматом все понятно!
Но текст это не только цифры, но и символы (буквы), поэтому строки, как таковой оказывается недостаточно - необходим Extended совмещенный с "нумериком"!
wicked (2002-04-09 10:18:00) [7]2 MaXie ©
gek прав... такие вещи держат в varchar"е... char используй осторожно, т. к. если ты запишешь туда строчку, меньшую от заявленного размера, то он добьёт её пробелами до полной длины...
2 roottim
> в 3-м диалекте...
каком диалекте?...
roottim (2002-04-09 09:58:00) [8]вообще такие значения нюня хранить в текстовом поле char(20) or varchar(20)...
в 3-м диалекте вроде держит нумерик и такое!.. но это геморой будет!
gek (2002-04-09 09:56:00) [9]Ну сделай строку