MySQL给定的关键字不在字典中

问题描述

从本地的MariaDB数据库切换上服务器上MySQL数据库,查询数据库时竟然报错了。仔细核对了数据库结构、实体定义都未发现问题所在。

最后发现两个数据库的默认编码不一样,MariaDB默认采用的utf8编码;而MySQL采用的utf8mb4编码。

解决方案

1.最简单的方式是修改数据库编码为utf8,但不能强制用户修改已建立好的数据库;

2.查询时,设置编码,如MySqlCommand cmd= new MySqlCommand("set names utf8", conn);

3.升级MySql.Data.dll版本。在官网下载最新版的dll文件,注意对framework版本的匹配。

下载地址:MySQL :: Download MySQL for Visual Studio (Archived Versions)

作者:我也是个傻瓜
出处:http://www.cnblogs.com/liweis/
签名:成熟是一种明亮而不刺眼的光辉。

原文地址:https://www.cnblogs.com/liweis/p/14874253.html