Results 1 to 14 of 14
Thread: Êàêúâ òèï ïîëå âúâ FIREBIRD
Hybrid View
-
11th July 2011 10:48 #1
Êàêúâ òèï ïîëå âúâ FIREBIRD
Êîëåáàÿ ñå êàêúâ òèï ïîëå çà öåíà íà ñòîêà äà èçïîëçâàì âúâ FIREBIRD áàçà äàííè â òàáëèöà çà ñòîêè: DOUBLE PRECISION èëè DECIMAL ?
Íàìåðèõ ñëåäíàòà èíôî:
DOUBLE PRECISION 8 bytes 1.7 * 10-308 to 1.7 * 10308 - 15 digits of precision (Note: The size is actually platform dependent.);
FLOAT 4 bytes 3.4 * 10-38 to 3.4 * 1038 - 7 digits of precision;
NUMERIC(precision, scale) variable Used to hold exact numbers precision (1 to 15) specifies how many digits to store. scale (1 to 15) (when present) specifies location of decimal point. Must be less than or equal to precision. Example - NUMERIC(10,3) - ppppppp.sss - stores exactly 10 digits;
DECIMAL(precision, scale) variable Specifies the minimum precision desired, but more is ok precision (1 to 15) specifies the minimum number of digits to store. scale (1 to 15) (when present) specifies location of decimal point. Must be less than or equal to precision. Example – DECIMAL(10,3) - ppppppp.sss - stores at least 10 digits.
-
11th July 2011 13:50 #2
Àç áèõ ïîëçâàë DECIMAL, îñâåí àêî ùå ïðàâèø íÿêàêâè óìíîæåíèÿ/äåëåíèÿ â ñàìàòà áàçà, êúäåòî ìîæå åâåíòóàëíî äà ñå çàãóáè precision.
 ñêðèïò âåðîÿòíî ùå ãè ïðåäñòàâÿø ñ Float, òàêà ÷å òàì ñè å îòäåëíî.
-
11th July 2011 14:19 #3Registered User
Join Date: Aug:2006
Location: Ïëîâäèâ
Posts: 4,052
Çà öåíè è ïîäîáíè íèêîãà, àìà íèêîãà íå ñå ïîëçâàò float/double è ïîäîáíèòå ìó íåòî÷íè òèïîâå.
Èíà÷å ñå ñòèãà äî íåïðèÿòíè èçöåïêè êàòî 63.99999999997ëâ ïðèìåðíî.
-
11th July 2011 15:00 #4
Ïðåäïîëàãàì ïî ïðåìúë÷àâàíå ãîâîðèø çà áàçàòà. Çàùîòî ïðîçâó÷à òàêà ñÿêàø íå òðÿáâà äà ïîëçâàìå íèùî â åçèöè, êîèòî íÿìàò íàòèâåí decimal òèï.
 PHP ïðèìåðíî èìàø ëè íåùî êàòî decimal native type?!
Äðóã å âúïðîñúò, ÷å ìàé ïî-ëåñíî å äà ãè ïðåäñòàâÿìå â integers âúâ âèä íà ñòîòèíêè/öåíòîâå è ò.í. âúòðåøíî.
-
11th July 2011 17:09 #5Registered User
Join Date: Aug:2006
Location: Ïëîâäèâ
Posts: 4,052
Òî÷íî òîâà èìàõ âïðåäâèä.
È õè÷ íå ìå âúëíóâà ôàêòà, ÷å íÿêîé ñå îïèòâà äà ïèøå íåùî account-èíã ñâúðçàíî íà åçèöè áåç ïîäõîäÿùà ïîääúðæêà - áåç çíà÷åíèå äàëè â åçèêà, äàëè â áèáëèîòåêà èëè ñîáñòâåíà èìïëåìåíòàöèÿ.
Çàãóáàòà íà òî÷íîñò ïîðàäè îãðàíè÷åíèÿòà íà float èìïëåìåíòàöèèòå è íåâúçìîæíîñòòà íà âñåêè float äà ñå ïðåäñòàâè ïðàâèëíî â äåñåòè÷íà ôîðìà ñà ñàìè ïî ñåáå ñè äîñòàòú÷åí ôàêòîð äà íå ñå ïèøå ôèíàíñîâà ôóíêöèîíàëíîñò ñ òÿõ, çà âñåêè åäèí ïîëó-îòãîâîðåí êëèåíò (êúì ñâîèòå êëèåíòè).
(ëè÷íîòî ìè ìíåíèå å äîñòà ïî-áðóòàëíî, áè òðÿáâàëî äà ñå íîñè íàêàçàòåëíà îòãîâîðíîñò îò ïîòðåáèòåëèòå ðàáîòåùè ñ ôèíàíñîâè äàííè áåç äà ãè îáðàáîòâàò êîðåêòíî ïî ñòàíäàðò ..)
ps: çà ïðèìåð êúäå âúïðîñíèòå òèïîâå ñà ïîäõîäÿùè - 3D. Âúîáùå íàâñÿêúäå êúäåòî òè òðÿáâà blazing ñêîðîñò, è ñè ñúãëàñåí äà sacrifice-íåø òî÷íîñòòà.
-
11th July 2011 15:10 #6
 òàáëèöòà åäèíñòâåíî ùå ñå ðàçäåëÿ öåíàòà â ëâ íà êóðñîâåòå çà äåíÿ íà EUR è USD, çà äà ïîëó÷àâàì ñúîòâåòíèòå öåíè, òàêà ÷å íÿìà äà ñå çàãóáè òî÷íîñò.
Êàê ùå áúäå îò ìîÿ ñòðàíà äîáðå, àêî íàñòðîÿ ïîëåòî:
PRICE_BGN........DECIMAL........16...... ..4........Not null (òî÷íîñò 0.01 îò ñòîòèíêàòà)
PRICE_BGN........DECIMAL........16...... ..3........Not null (òî÷íîñò 0.1 îò ñòîòèíêàòà)
PRICE_BGN........DECIMAL........16...... ..2........Not null (òî÷íîñò 1. ñòîòèíêà)
Ïðèìåðíî çà äíåñ êóðñîâåòå ñà:
1 EUR = 1.955830 BGN
1 USD = 1.373280 BGN
Ùå ñå äåëè PRICE_BGN íà 1.955830 è ùå ñå ïîëó÷è PRICE_EUR
Ùå ñå äåëè PRICE_BGN íà 1.373280 è ùå ñå ïîëó÷è PRICE_USDLast edited by finalista; 11th July 2011 at 15:32.
-
11th July 2011 15:40 #7
Íå ñòàíà ÿñíî, è äâåòå öåíè ëè ùå ïàçèø â áàçàòà? Íàëè âñåêè äåí êóðñîâåòå ñå ìåíÿò?
Òîâà íå ïðîìåíÿ ìíîãî, öåíàòà òè å ñ òî÷íîñò äî ñòîòèíêà/öåíò, à â ïðèëîæåíèåòî òè ñè äåëèø íà êóðñà è ïîëó÷àâàø â ðåçóëòàò íÿêàêúâ float, êîéòî ìîæåø äà çàêðúãëÿø è ò.í. ñïîðåä íóæäèòå.
-
11th July 2011 15:43 #8
Òîâà ñå ÷óäÿ è àç, èìà ëè ñìèñúë äà ñå ïàçÿò îùå äâå öåíè â òàáëèöàòà çà ñòîêàòà èëè ïî âðåìå íà ðàáîòà ñ ïðîãðàìàòà, ïðè íåîáõîäèìîñò, äà ñå äåëè íà êóñîâåòå è äà ñå ïîëó÷àâà öåíèòå âúâ âàëóòà, áåç äà ãè èìà â òàáëèöàòà íà ñòîêàòà.
Èìàì îòäåëíà òàáëèöà çà âàëóòè, äàòè è êóðñîâå.
Ìîæå áè ñàìî ïðè ðåàëèçèðàíà ïðîäàæáà, òðÿáâà äà ñå çàïàìåòè êîíêðåòíàòà ïðîäàæíà öåíà â BGN, EUR è USD è äà íå çàâèñè îò òîâà, ÷å íà ñëåäâàùèÿ äåí êóðñîâåòå (öåíèòå) ùå ñà ðçëè÷íè ..
Çàñåãà ñúì ñúçäàë òðè ïîëåòà â òàáëèöàòà: PRICE_BGN, PRICE_EUR è PRICE_USD, íî ìàé òðÿáâà äà è îñòàíå ñàìî ïúðâîòî çà ëåâîâàòà öåíà.
Áè áèëî ïðåêàëåíî ñëîæíî, äà èìà ïîëå PRICE è îòäåëíî ïîëå CURRENCY, çà äà ìîæå äà ñå ñëàãà öåíàòà â ïðîèçâîëíà âàëóòà îò òàáëèöàòà ñ âàëóòèòå è äà ñå ïðåèç÷èñëÿâà â îñòàíàëèòå âàëóòè ïî ñúîòâåòíèòå êóðñîâå ..Last edited by finalista; 11th July 2011 at 16:21.
-
11th July 2011 16:46 #9
Íå å âúïðîñà äî ñëîæíîñò, à äî ïîòðåáíîñòèòå â ñëó÷àÿ, è çàäàíèåòî çà ïðèëîæåíèåòî. Ñïîðåä òîâà êàêâî èñêàø äà ïîñòèãíåø, ïîëçâàø åäèí èëè äðóã íà÷èí. Çàâèñè è îò íàòîâàðâàíåòî, ïðè âèñîêè íàòîâàðâàíèÿ ÷åñòî ñå ïðèáÿãâà äî redundancy, ïàçåíå íà êàêâè ëè íå äàííè â áàçàòà çà äà ìîãàò áåç ïðåèç÷èñëÿâàíå äà ñå ïîêàçâàò, è ò.í.
Çàâèñè êîÿ òè å ðåôåðåíòíàòà âàëóòà, îñòàíàëèòå ñè ãè ïðåèç÷èñëÿâàø â ïðèëîæåíèåòî ïðè ïîêàçâàíå.
Çà ðåàëèçèðàíà ñòîêà å ÿñíî ÷å ùå ñè ïàçèø âúçìîæíî íàé-ìíîãî äàííè. È ïàê, äîðè òîãàâà íå âèæäàì çàùî äà ïàçèø âñè÷êè öåíè ïîîòäåëíî, ìîæåø äà çàïàçèø ñàìî êóðñà çà äàäåíèÿ ìîìåíò, è ïðè íóæäà äà ãî ïðåèç÷èñëèø (ðàçãëåæäàíå íà èñòîðèÿòà è ò.í.). Âúïðîñ íà èçèñêâàíèÿ.
-
11th July 2011 17:02 #10
-
11th July 2011 19:13 #11
Ìàëêî êðàéíî ñå èçêàçâàø ñïîðåä ìåí.
Àêî íå òå âúëíóâàøå èçîáùî, íÿìàøå äà ïèøåø â òåìàòà, ïðîñòî å. Íå ñàìî ñè ïèñàë, íî è ñàì ñïîäåëÿø åâåíòóàëíî ãíåâà ñè (îáðàçíî êàçàíî) îò âåðîÿòíè ëîø "åêñïèðèúíñ" â ìèíàëîòî.
Àç ïúê èìàì íÿêàêâî áðóòàëíî ìíåíèå îòíîñíî íÿêîè ôðàïèðàùè ãðåøêè, êîèòî äîñòà õîðà äîïóñêàò â ðå÷òà ñè, â ðàçðåç ñ ïðàâèëàòà íà åçèêà, íî àéäå äà íå öèòèðàì. Âñåêè ìîæå ñàì çà ñåáå ñè äà âèäè è ïðåöåíè.
 òîçè äóõ, ÷îâåêúò å ïèñàë, ÷å å çà õîáè, îòäåëíî îò òîâà èìà áåçáðîé ïðèëîæåíèÿ, âêë. íà PHP, ïèñàíè îò íåñïåöèàëèñòè "ïî ñòàíäàðò" è óïðàâëÿâàùè öåíè, åëåêòðîííè ìàãàçèíè è ò.í. Çàâèñè è êàêâà îáðàáîòêà ñå ïðàâè. Ñïàçâàíåòî íà îïðåäåëåíà òî÷íîñò ìèñëÿ, ÷å íå å ÷àê òàêúâ âèñø ïèëîòàæ, è ìîæå äà ñå íàïðàâè íà ïðîèçâîëåí åçèê, ïî åäèí èëè äðóã íà÷èí.
Ìîæå áè å äîáðå äà äàäåø ïðèìåð çà íåòî÷íà îáðàáîòêà, îùåòÿâàùà íÿêîÿ îò ñòðàíèòå, êîÿòî òðÿáâà äà âîäè äî íàêàçàòåëíà îòãîâîðíîñò. Ñèëíî ñå ñúìíÿâàì, ÷å ùå å òàêàâà, êîÿòî ñå ñðåùà â åæåäíåâíî ñðåùàíèòå ïðèëîæåíèÿ - àêî ñà ñåðèîçíè òàêèâà òå âå÷å ùå ðàáîòÿò êîðåêòíî.
-
11th July 2011 19:56 #12
Âñåêè ìîìåíò ùå ìè ñå ðàçâàëè íàñòðîåíèåòî âåðîÿòíî ....
Âúâåäîõ åäèí ìàòåðèàë äèðåêòíî â áàçàòà â òàáëèöà MATERIALS, êàòî èìåòî å íà êèðèëèöà è òàêà ñå âèçóàëèçèðà òàì, çàùîòî CHARSET íà áàçàòà å WIN1251.
Îáà÷å ÷åòåéêè ÷ðåç Zeos Access êîìïîíåíòè è ïî-ñïåöèàëíî TZQuery èìåòî ñå âèçóàëèçèðà ñàìî ñ ????? ñèìâîëè.
Íå îòêðèâàì ïî êàêúâ íà÷èí äà íàñòðîÿ CharSet íà TZConnection ñúùî äà áúäå WIN1251.Last edited by finalista; 11th July 2011 at 20:12.
-
11th July 2011 23:33 #13
Ìèíàëèÿ âåê, êîãàòî ðàáîòåõ è àç ñ cp1251 êîäîâè òàáëèöè òóê òàìå, òèÿ íåùà ãè îïðàâÿõ ñ êîìàíäà SET NAMES 'CP1251' ìèñëÿ. Âåäíàãà ñëåä êîíåêöèÿòà.
Òè ïîëçâàø íÿêàêúâ êîìïîíåíò, êîéòî òðÿáâà äà âèäèø êàê ñòàâà ïðè íåãî.
Çàùî ïîëçâàø win1251?
Îòäàâíà íàñòðîéâàì mysql-èòå è âñè÷êî, äà ïîëçâà UTF-8 è íÿìà ãðèæè.
-
12th July 2011 00:06 #14
Ñòàíà ÷ðåç èçïîëçâàíå íà UTF8.
Ïðîìåíèõ CharSet íà áàçàòà äàííè îò WIN1251 íà UTF8.
È ïîñëå ñ åäèí ðåä â êîäà íà ËÀÇÀÐÓÑ ïðîãðàìàòà âñè÷êî òðúãíà èäåàëíî:
Áëàãîäàðÿ !Code:ZConnection.Properties.Text := 'Codepage=UTF8';




Reply With Quote

Lenovo ThinkPad 15 èëè IdeaPad 15
5th May 2023, 22:16 in Ìîáèëíè êîìïþòðè