尝试使用Delphi 2010和TADOConnection,将Unicode字符值插入到MySQL数据库中,但没有运气。使用Delphi 2010将Unicode字符插入到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;
使这个代码不为我在所有的工作,只有当我添加参数在设计时,但后来它仍然是同样的结果在数据库与问号全部结束。
这是什么样的Unicode? UTF-16?目标表中的编码是什么? – 2010-10-05 15:00:50
不确定,因为我不是设置数据库的人。我如何检查? 但我知道它可以存储俄语字符,因为我有一个PHP脚本,可以做到这一点没有问题 – Bulan 2010-10-05 15:13:41