Delphi 2010 と TADOConnection を使用して、Unicode Char の値を MySQL データベースに挿入しようとしていますが、うまくいきません。
ODBCとの接続
Provider=MSDASQL.1;Persist Security Info=False;Data Source=mysrc;Initial Catalog=mydb
SQL コマンド:
INSERT INTO myTable (aCol) VALUES('Russian: русский язык')
で直接挿入してみました
TADOConnection.Execute(SQL)
データベースでは「ロシア語: ??????? ????」となるだけです。
ここで提案されている方法も試してみました:
http://www.3delite.hu/Object%20Pascal%20Developer%20Resources/delphiunicodemysqltutorial.html
With TADOQuery do
begin
SQL.Clear;
SQL.Add('INSERT INTO myTable (aCol) VALUES(:p));
Parameters.ParamByName('p').DataType := ftWideString;
Parameters.ParamByName('p').Value := 'Russian: русский язык';
ExecSQL;
end;
これをコードで作成しても、設計時にパラメーターを追加した場合にのみ、まったく機能しませんが、データベース全体で同じ結果になり、疑問符が全体に表示されます。