杂记1

  1. 在windows下mysql的语句是不区分大小写的,但是在linux下是区分大小写的。在最近这个项目中,在本地的windows上做的sql在linux系统上运行不了,这才了解。
  2. 再用dom4j操作xml文件,在读取时会进行dtd的验证,有些时候会报错。可以通过配置去掉dtd的验证,缩短读取时间。
    SAXReader reader = new SAXReader();
    reader.setFeature("http://apache.org/xml/features/nonvalidating/load-external-dtd", false);
    /* 在读取文件时,去掉dtd的验证,可以缩短运行时间  */
    reader.setEncoding("UTF-8");
    Document document = reader.read(new File(文件路径));
  3. mysql默认会限制server接受的数据包大小,有时候大的插入和更新会max_allowed_packet 参数限制掉,导致失败。解决方法修改此变量的值,MySQL安装目录下的my.ini文件中的[mysqld]段中的"max_allowed_packet = 1M",如更改为4M(如果没有这行内容,增加一行),保存,重起MySQL服务。现在可以load大于1M的文件了。
  4. MYSQL导出数据的一条语句:
    SELECT * FROM CMS_USERS INTO OUTFILE '/tmp/orders.csv';
  5. SELECT * FROM TABLENAME INTO OUTFILE '/tmp/A.csv' FIELDS TERMINATED BY ';' LINES TERMINATED BY '\n'; 
    
      
  6. FIELDS TERMINATED BY 设置字段之间的分隔符。
    LINES TERMINATED BY 设置行直接的分隔符。
    使用';'和'\n'分割,就可以用excel打开
  7. SELECT ID_USERS,COUNT(*),GROUP_CONCAT(ID_O) FROM CMS_RECORD GROUP BY ID_USERS;
     根据ID_USERS进行分组后,GROUP_CONCAT(ID_O)方法就是将一组数据中的某个列的值放在一起,显示出来。(也可以进行组合GROUP_CONCAT(ID_O,'链接符',ID))

你可能感兴趣的:(杂记1)