我有一个 windows 2008 服务器和一个 asp 网站。
我将站点从 Windows 2003 服务器移至我的服务器,并且运行良好。它使用 mysql 作为数据库,Set Names 'Latin5' 是它的 odbc 驱动程序初始语句。
我尝试设置相同的初始语句,但收到“驱动程序不允许设置名称”错误消息,数据库更新/插入查询给出错误。
该网站使用土耳其语。
谢谢你的帮助..
最佳答案
SET NAMES 已在 MyODBC 5.1 版中删除。 http://dev.mysql.com/doc/refman/5.1/en/connector-odbc-news-5-1-1.html
所以你有几个选择:
使用 MyODBC 5.1,删除所有 SET NAMES 调用。
在 ODBC 中更改您的 DSN 以指定字符集,否则如果您使用的是无 DSN 连接字符串,则需要添加 Charset=Latin5;
示例:
Server=myServerAddress;Database=myDataBase;Uid=myUsername;Pwd=myPassword; Charset=Latin5;
您可能还需要分隔表名,MySQL 使用 ` 来分隔表名。
示例:
SELECT id FROM `table`;
最后一个选项是降级到 MyODBC 3.51。
关于驱动程序不允许 MySQL ODBC 5.1 设置名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6361744/