SQL Problem

3 отговора 131 прегледа
#1

SQL Problem

Napisah si programka na C++Builder i izpolzvah MySQL. Vsichko si raboteshe dobre dokato ne reshih che i lokalniqt Paradox shte mi svyrshi rabota. Problemyt e sledniqt: v MySQL e napylno korektno da napishesh '5,14' za stoinost na float pole. Obache v Paradox ne trqbva da se ograjda s apostrofi. A razbirate che tazi zapetaq se interpretira ne kakto trqbva (ne e tochka zaradi local settings - ne moga da karam vseki da si go promenq na English).

Отговор
в отговор на Neznaiko #2

Savet

Bez da sam 100% siguren (dali tova za koeto pishesh e pod Windows) dali e tochka ili zapetaia se opredelia ot system settings - pone v Windows e taka. Bi sledvalo da imash metod kojto da ti vrashta system settings i v zavisimost ot tiah da napravish "smart" formirane na SQL izraza

Отговор
в отговор на Neznaiko #3

Re: SQL Problem

Другия вариант е да зададеш стойност на DecimalSeparator при стартиране на програмата:
DecimalSeparator := ','
(така е в delphi)

Отговор
в отговор на Neznaiko #4

Re: SQL Problem

Трети метод (и според мен най-удачен) е да използваш query с параметри:
SQL от сорта на:

update table1
set
Field1 = :Field1Value
...

И после в кода:

ParamByName('Field1Value').AsFloat := F1V;

(Пиша на Delphi, ама е все тая според мен)
По този начин печелиш от това, че сървърът ти държи компилираните заявки в кеша и ако е често използван израз, печелиш време
Е, това за кеша се отнася за Oracle, в Paradox или MySQL не разчитай много на това

Отговор