Databáze > MS SQL

ADO + Tfieldtype + ftstring versus ftwidestring

(1/1)

rob.:
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

rob.:
diky moc za fundovanou odpoved, to jsem presne potreboval.

Navigace

[0] Seznam témat

Přejít na plnou verzi