• 常见问题--MySQL


    group by相关
    “only_full_group_by” SQL_MODE是默认开启的,开启后只能获取受group by影响的字段,而对于非group by的信息需要通过any_value(name)函数获取(mysql 5.7之后)

    ibatis annotations 注解方式返回刚插入的自增长主键ID的值
      @Insert("insert into Product(title, image, price, detail, summary, seller) values(#{title},#{image},#{price},#{detail},#{summary},#{seller})")
      @Options(useGeneratedKeys=true, keyProperty="id")//添加该行,product中的id将被自动添加public Integer insertProduct(Product product);

    乱码问题

    tomcat造成的乱码,在server.xml中设置:

    <Connector URIEncoding="UTF-8" connectionTimeout="20000" port="8080" protocol="HTTP/1.1" redirectPort="8443" useBodyEncodingForURI="true" />


    连接数据库的URL中加入编码格式,如:

    jdbc.url= jdbc:mysql://127.0.0.1:3306/electronic-business?useUnicode=true&characterEncoding=UTF-8

    数据库设置:

    mysql> SET character_set_client='gbk';

    mysql> SET character_set_connection='gbk'

    mysql> SET character_set_results='gbk'

    mysql> SET character_set_database='gbk';

    mysql> SET character_set_server='gbk'

    mysql> SET character_set_results='gbk'

    改成gbk或者utf-8都可以

    常用相关命令:
    查看数据库编码格式
    show variables like 'character_set_%';
    查看数据库中的表的创建
    show create table tablename;
    设置数据库编码格式
    set names= 'gbk';
    或者在mysql命令行下输入 s查看mysql的字符集的方式

    blob格式引起的乱码:
    blob读出来的是ISO-8859-1编码,你需要转换为GBK编码才可以
    Java code
    String blob =...
    blob = new String(blob.getBytes("iso-885901"),"GBK");
    或者
    存取大文本的时候用mediumtext而不用blob

    CentOS 7 通过yum安装MySQL 5.7
    1.下载YUM库
    shell > wget http://dev.mysql.com/get/mysql57-community-release-el7-7.noarch.rpm
    2.安装YUM库
    shell > yum localinstall -y mysql57-community-release-el7-7.noarch.rpm
    3.安装数据库
    shell > yum install -y mysql-community-server
    4.启动MySQL服务
    shell > systemctl start mysqld.service
  • 相关阅读:
    文言文
    【我回来了】TO DO LIST
    AFO
    [DP]
    [CF1221F]Choose a Square
    关于博主(2)
    自我介绍( 并不?
    老年选手的复健之路
    CSP/NOIP 2019 游记
    CSP前模板复习
  • 原文地址:https://www.cnblogs.com/kioluo/p/6861880.html
Copyright © 2020-2023  润新知