0
FiredacのDELPHI XE3ではテーブルtable0を作成し、UTF8エンコーディングでテキストを挿入するとOKです。FIRテーブルを読むときにFIREDAC-UTF8エンコーディングはサポートされていません
CREATE TABLE table0 (mytext Ntext,publishdate date);
INSERT INTO table0 (mytext,publishdate) VALUES ('привет','1998-12-07');
しかし、FTSテーブルを作成してUTF8でテキストを挿入すると、
CREATE VIRTUAL TABLE table1 USING FTS4(mytext,publishdate);
INSERT INTO table1 (mytext,publishdate) VALUES ('привет','1998-12-07');
と我々が得る
SELECT mytext FROM table1
でデータを読み取る "??????"。
SQLiteエキスパートパーソナルの同じコマンドは、 "привет"を返します。つまり、Insertコマンドの後のテーブルでは 'привет'を、selectではUTF8エンコーディングではないデータを返します。
Firedac
ADQuery.Open('SELECT mytext FROM table1')?
ここでは 'AsWideString'、または' AsWideMemo'は疑問符を返しますか?または値を得るために何を使用しますか?また、挿入するには、同様のアクセス権を持つパラメータを使用する必要があります。 – Victoria