常见问题汇总(十二)——关于Mysql

1、向数据库插入中文出现乱码

      (1)jdbc:mysql://localhost:3306/world?useUnicode=true&characterEncoding=utf8

    * 对实体 "characterEncoding" 的引用必须以 ';' 分隔符结尾,但;在xml中必须用&转义

     (2)数据库字符设定为UTF-8

            

     (3)页面字符设定为UTF-8

<%@ page language="java" contentType="text/html; charset=utf-8"
	pageEncoding="utf-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">

       (4) 前后交互(过滤)字符设定为UTF-8,注意get、post等方式访问实现utf-8 方式不同

 <filter>
    <filter-name>characterEncodingFilter</filter-name>
    <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
    <init-param>
      <param-name>encoding</param-name>
      <param-value>UTF-8</param-value>
    </init-param>
    <init-param>
      <param-name>forceEncoding</param-name>
      <param-value>true</param-value>
    </init-param>
  </filter>
  <filter-mapping>
    <filter-name>characterEncodingFilter</filter-name>
    <url-pattern>/*</url-pattern>
  </filter-mapping>

 

       (5)开发工具中当前项目设定为UTF-8

 

2、不准使用sql函数或命令作为表名或字段名,如果必须加需要用··包裹起来

3、忘记root密码

        https://www.jb51.net/article/101260.htm           https://www.jb51.net/article/77858.htm

4、Unknown column in field list

        无法从数据库获取相应字段:传入参数属性和数据库字段名不同;数据库没有对应字段

5、使用union返回数据与预期不符合

        union要求,连接双方,返回字段个数一致,名称一致,顺序一致

6、Navicat连接mysql报2059错误 

navicat不支持mysql5.7以上的加密规则,用下面命令改变规则

mysql -uroot -ppassword #登录

use mysql; #选择数据库

ALTER USER 'root'@'localhost' IDENTIFIED BY 'password' PASSWORD EXPIRE NEVER; #更改加密方式

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password'; #更新用户密码

FLUSH PRIVILEGES; #刷新权限

 

阅读更多
换一批

没有更多推荐了,返回首页