Mysql 存储过程,传递中文参数问题

insertintotb_tmp(id,company_id,bank_rate,bank_cap)SELECTRELATION_ID,company_id,bank_r... insert into tb_tmp (id,company_id,bank_rate,bank_cap)
SELECT RELATION_ID, company_id,bank_rate,bank_cap from p_rate_relation
WHERE (COMPANY_ID = c_id AND BANK_NAME = bankName);
这个bankName 是我传入的参数 ,比如农业银行 我这样写的话就查不出来,加单引号也不行,如果bankName传入的时候是英文就可以
展开
 我来答
战地密报
2014-08-22 · TA获得超过211个赞
知道小有建树答主
回答量:424
采纳率:0%
帮助的人:160万
展开全部
应该是编码问题。输入
set names gbk;
这是使你输入查询取数据的传输的用的编码。
不行的话可能你原先存的时候编码就不对了。
所以就先drop你当前这数据库,然后set names gbk; ,再建数据库和表。再测试下应该就可以。

当然还要保证你的server client 底层存数据的默认编码是utf8..至少要gbk,如果默认是latin1要改下。具体在配置文件my.ini里改 default-character-set=utf8 这个你可以搜索一下具体怎么改
更多追问追答
追问
不是参数编码问题 我用dbforge调试过了 参数都是对的 不管是农业银行还是'农业银行'全部无法查询
追答
那你查查表里面有没有COMPANY_ID = 传入id AND BANK_NAME = '农业银行'的记录
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式