Autor Téma: ADO + Tfieldtype + ftstring versus ftwidestring  (Přečteno 666 krát)

Offline rob.

  • Nováček
  • *
  • Příspěvků: 38
  • Karma: 0
ADO + Tfieldtype + ftstring versus ftwidestring
« kdy: 05-04-2019, 11:00:40 »
Ahoj,
v db je textove pole deklarovano jako nvarchar, vkladam do nej parametrickym sql prikazem textovy retezec z tedit.text. Pokud v parametru sql deklaruji pole jeko ftstring, azbukou zadany retezec se v db objevi jen jako retezec otazniku o delce toho stringu, coz by me moc neprekvapilo pokud bych delal ve stare, neunicode verzi delphi, nebo pole v db nebylo jako nvarchar. Pokud pole v dotazu specifikuji jako datatype:=ftwidestring, je retezec korektne v db ulozen v azbuce. V napovede delphi je uvedeno ze Tfieldtype ftstring odpovida string delphi (tedy ne treba ansistring), tzn, bych cekal ze v unicode verzi delphi (kde string je  unicode) jaksi automaticky tento problem nenastane i kdyz pouziji ftstring. Mam tedy chapat ze ftstring kazdopadne neodpovida string z delphi a musim vsechna textova pole v dotazech deklarovat jako ftwidestring (nezavisle na tom jestli delam v delphi 7 nebo treba 10)? Proste pro pripad, ze si v ceskem programu na ceskych win obcas nekdo muze chtit ulozit cizi vyraz v jine znakove sade. A vi nekdo jak by se to chovalo na treba ruskych windows, kdyby pole bylo jako ftstring.... ?

diky za zkusenosti

Offline rob.

  • Nováček
  • *
  • Příspěvků: 38
  • Karma: 0
Re:ADO + Tfieldtype + ftstring versus ftwidestring
« Odpověď #1 kdy: 05-04-2019, 12:09:32 »
Excellent
Rated 1 time
diky moc za fundovanou odpoved, to jsem presne potreboval.