mysql source 执行sql脚本,中文变量不显示问题或乱码问题

Posted 苍洱

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql source 执行sql脚本,中文变量不显示问题或乱码问题相关的知识,希望对你有一定的参考价值。

执行脚本内容如下:

SET @pre_version=2017080901;
SET @cur_version=2017090401;
SET @ver_desc = ‘测试脚本‘;

CALL pro_exec_update_db_v_1(@pre_version,@cur_version,‘‘,1,0,‘‘);
CALL pro_exec_update_db_v_1(@pre_version,@cur_version,@ver_desc,2,0,‘‘);

  

存储过程如下:

DELIMITER |
drop procedure if exists pro_exec_update_db_v_1;
CREATE PROCEDURE pro_exec_update_db_v_1 
( 
npre_version INT,
ncur_version INT,
ver_desc	VARCHAR(1000),
pro_type INT,
nsql_type INT,
sql_str VARCHAR(4000)
)

BEGIN 

select ver_desc;
END;
|
DELIMITER ;

 在mysql 命令行里面 执行sql 无法显示ver_desc内容

解决方法:

把sql脚本的编码改为utf-8编码,执行正常。

以上是关于mysql source 执行sql脚本,中文变量不显示问题或乱码问题的主要内容,如果未能解决你的问题,请参考以下文章

进入mysql控制台后执行sql脚本的方法

怎么在执行脚本中自动执行mysql导入跟密码输入

mysql用source命令导入.sql

mysql怎么执行

MYSQL在脚本中使用变量-执行脚本时传参

如何在 Ubuntu 上的 mysql 中运行 sql 脚本?