51Testing软件测试论坛
标题:
loadrunner通过动态链接mysql数据库,从数据库中查询出来的中文字段为乱码,如何解决?
[打印本页]
作者:
beata-chenli
时间:
2015-8-6 09:59
标题:
loadrunner通过动态链接mysql数据库,从数据库中查询出来的中文字段为乱码,如何解决?
我通过函数进行动态链接数据库,sql语句很简单,其中MarketName为中文,运行脚本后,MarketName=‘???????’,求解,如果转换中文。 lrd_init(&InitInfo, DBTypeVersion);
//打开上下文
lrd_open_context(&Ctx1, LRD_DBTYPE_ODBC, 0, 0, 0);
//申请连接的内存
lrd_alloc_connection(&Con1, LRD_DBTYPE_ODBC, Ctx1, 0 , 0);
//打开连接,注意DRIVER就是上面安装的
// lrd_open_connection(&Con1, LRD_DBTYPE_ODBC, "", "","", "DRIVER=MySQL ODBC 3. 51 Driver;UID=root
WD=123456;SERVER=192.168.1.99;DATABASE=TestDB", Ctx1, 1, 0);
lrd_open_connection(&Con1, LRD_DBTYPE_ODBC, "", "","", "DRIVER={MySQL ODBC 3.51 Driver};UID=root
WD=;SERVER=;DATABASE=t;", Ctx1, 1, 0);
//打开游标
lrd_open_cursor(&Csr1, Con1, 0);
//Sql语句,注意1代表的意思是,立马执行
lrd_stmt(Csr1,"SELECT a.`Id`,a.`MarketName`,a.`MarketId` FROM TO_Org_Stock a WHERE a.`State`=1 AND a.`MarketId`='{UserMaketid}' AND a.`mnemonic`IS NOT NULL;", -1, 1, 0 , 0);
作者:
jingzizx
时间:
2015-8-6 13:44
首先确认数据库中存在的中文不是乱码显示;
保持loadrunner编码格式与数据库编码格式一致;
或者使用函数进行编码转换lr_convert_string_encoding;
作者:
beata-chenli
时间:
2015-8-6 14:58
jingzizx 发表于 2015-8-6 13:44
首先确认数据库中存在的中文不是乱码显示;
保持loadrunner编码格式与数据库编码格式一致;
或者使用函数 ...
运行脚本日志中显示:“MarketName=‘??????’”
所以使用lr_convert_string_encoding是转换不出来的,数据库中存在的中文是正确的,编码格式也都是utf-8,
欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/)
Powered by Discuz! X3.2