Форум: "Базы";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.04.29;
Скачать: [xml.tar.bz2];




Вниз

Совмещение несовместимого! 


MaXie   (2002-04-09 09:44) [0]

При помощи поля ввода с маской (элемент класса TMaskEdit) вводится кор.счет банка - 20 значащих цифр. Теперь это значение необходимо присвоить полю tbCorCheckBank таблицы tbBanks. Как это сделать?
Тип Double позволяет вместить 15..16 значащих цифр. Currency - содержит фиксированную запятую, отсекающую последние четыре разряда. Насколько я понимаю, тривиальный подход к присвоению значения ячейки столбца, как:

tbBanks.FieldByName("tbCorCheckBank").AsXXXX := ...

здесь не пройдет. Вот и возникает вопрос: каким образом совместить число типа Extended с типом numeric (на SQL Server)?



gek   (2002-04-09 09:56) [1]

Ну сделай строку



roottim   (2002-04-09 09:58) [2]

вообще такие значения нюня хранить в текстовом поле char(20) or varchar(20)...
в 3-м диалекте вроде держит нумерик и такое!.. но это геморой будет!



wicked   (2002-04-09 10:18) [3]

2 MaXie ©
gek прав... такие вещи держат в varchar"е... char используй осторожно, т. к. если ты запишешь туда строчку, меньшую от заявленного размера, то он добьёт её пробелами до полной длины...

2 roottim

> в 3-м диалекте...

каком диалекте?...



MaXie   (2002-04-09 10:29) [4]

С текстовым форматом все понятно!
Но текст это не только цифры, но и символы (буквы), поэтому строки, как таковой оказывается недостаточно - необходим Extended совмещенный с "нумериком"!



Lusha   (2002-04-09 10:30) [5]

>MaXie
А кто Вам мешает не давать пользователю вводить символы отличные от цифр?



wicked   (2002-04-09 10:33) [6]

2 MaXie ©
ну и что?... это не смертельно, для этого есть средства проверки данных при вводе... а великая-могучая-теория-проектирования-бд говорит - "всё, что не будет участвовать в арифметических операциях, должно иметь строчный тип"... поверь, избежишь многих граблей...



MaXie   (2002-04-09 10:55) [7]

Просто хотелось бы вести ограничение на ввод символов в поле корсчета не только со стороны клиента, но и сервера - обеспечение взаимной независимости (развязки)!

>wicked
Отдельное спасибо за совет! :)



roottim   (2002-04-09 11:35) [8]

2wicked
я не помню в MSSQL типы.. но в оракле number(20)и более это нефиг делать!... хотя точно не знаю MSSQL работает SQL3
я так понимаю MaXie © не мог найти подходящий для этого тип!..
хотя в строковом виде.. это самое лучшее решение! особенно если впереди необходимо ставить "0"



Anatoly Podgoretsky   (2002-04-09 12:46) [9]

На самом деле это не номер, а идентификатор, поэтому char




Форум: "Базы";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.04.29;
Скачать: [xml.tar.bz2];




Наверх





Память: 0.73 MB
Время: 0.022 c
1-94485           MMarat                2002-04-16 13:50  2002.04.29  
Вложенность


14-94539          kaif                  2002-03-21 00:05  2002.04.29  
Как купить D5 Pro?


3-94254           glaxo                 2002-04-05 18:52  2002.04.29  
Вопрос на засыпку для крутых программеров!!!


7-94596           ураган                2002-02-04 22:38  2002.04.29  
помогите написать дрова


1-94518           asdf                  2002-04-16 14:34  2002.04.29  
Признак работы Delphi