`
flowercat
  • 浏览: 361578 次
社区版块
存档分类
最新评论

mysql的sql-mode设置为''带来的问题

阅读更多

   在linux下网管安装的mysql不知何故其sql-mode设置为'',这样导致在插入数据的时候,如果数据长度大于字段的长度则多余的部分会被自动截断。

下面表格说明了char和varchar之间的区别:

CHAR(4)

存储需求

VARCHAR(4)

存储需求

''

'    '

4个字节

''

1个字节

'ab'

'ab  '

4个字节

'ab '

3个字节

'abcd'

'abcd'

4个字节

'abcd'

5个字节

'abcdefgh'

'abcd'

4个字节

'abcd'

5个字节


 
一般情况下sql-mode应该设置为STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION

分享到:
评论

相关推荐

    Emacs的sql-mode扩展

    emacs在sql-mode模式下可以进行SQL编辑和测试。 支持Sybase,Oracle,MySQL和PostgreSQL。 放到site-lisp目录下,然后在.emacs中配置 (load-file (expand-file-name "E:/lispbox-0.7/emacs-23.2/site-lisp/sql-...

    this is incompatible with sql-mode=only-full-group-by

    this is incompatible with sql-mode=only-full-group-by

    MySQL5.7中的sql_mode默认值带来的坑及解决方法

    本文主要内容是MySQL升级到5.7版本之后,由于默认的 sql_mode 值带来的坑以及对应的解决方案。 案例一:ONLY_FULL_GROUP_BY 问题描述 MySQL版本从5.6升级至5.7之后,部分SQL执行报错,报错信息如下: ERROR 1055 ...

    关于MySQL的sql_mode合理设置详解

    MySQL的sql_mode合理设置 sql_mode是个很容易被忽视的变量,默认值是空值,在这种设置下是可以允许一些非法操作的,比如允许一些非法数据的插入。在生产环境必须将这个值设置为严格模式,所以开发、测试环境的数据库也...

    html前端sql格式化.zip

    综上所述,`html前端sql格式化.zip`提供的资源可以帮助开发者构建一个功能完善的前端SQL格式化工具,结合`sql-formatter.js`的格式化能力和Ace编辑器的强大编辑功能,为SQL操作带来极大的便利。开发者只需按照上述...

    mysql-installer-community-5.6.10.1.zip windows下的安装包

    在Windows环境中,MySQL的安装通常非常直观,但由于涉及到系统服务和权限设置,因此安装过程中需要注意系统安全性和稳定性。此外,为了保持数据库的正常运行和数据安全,建议定期备份,同时关注MySQL的版本更新,...

    mysql-5.5.25-win32

    5. **JSON支持**:虽然完整的JSON支持是在MySQL 5.7引入的,但5.5版本开始为JSON数据类型和函数打下了基础。 6. **更多的性能监控和分析工具**:如Performance Schema,提供了详细的服务器性能数据,帮助管理员诊断...

    MySQL中SQL Mode的查看与设置详解

    3. **配置(永久生效)级别**:要使SQL Mode设置永久生效,需要编辑MySQL的配置文件,例如在Mac系统中通常是`/etc/my.cnf`。在`[mysqld]`段下添加`sql-mode = "xx_mode"`,其中`xx_mode`是你想要的模式组合。配置...

    mysql中的sql_mode模式实例详解

    本文实例讲述了mysql中的sql_mode模式。分享给大家供大家参考,具体如下: mysql数据库的中有一个环境变量sql_mode,定义了mysql应该支持的sql语法,数据校验等!我们可以通过以下方式查看当前数据库使用的sql_mode:...

    mysql-5.7.19-winx64配置说明

    sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES [WinMySQLAdmin] D:\Program Files\mysql-5.7.19-win32\bin\mysqld.exe ``` - 其中,`basedir`指定了MySQL的根目录路径,而`datadir`则指定了数据文件...

    mysql-5.7.17-winx64的安装、配置和初始化

    1. **添加系统环境变量**:打开系统环境变量设置,新增一个名为`MYSQL_HOME`的环境变量,其值为MySQL解压后的目录,例如`F:\mysql-5.7.17-winx64`。 2. **添加Path路径**:在系统环境变量中的Path路径中添加`%MYSQL_...

    Mysql关于使用存储过程设置sql_mode

    NULL 博文链接:https://yixinhu.iteye.com/blog/1534691

    CentOS Linux release 7.9.2009 安装 mysql-5.7.37-linux-glibc2.12-x8

    sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION ``` 5. 初始化 MySQL: - 安装依赖:`yum install libaio* -y` - 初始化数据库:`cd /usr/...

    Mysql之SQL Mode用法详解

    - **运行时设置**: 从MySQL 4.1版本开始,可以通过`SET [SESSION|GLOBAL] sql_mode='modes'`语句来改变当前会话或全局的SQL模式。 3. **常见SQL Mode值及作用** - **ANSI**: 更改语法和行为以更接近标准SQL。 - ...

    mysql-8.0.11-winx64 解压版安装带教程

    解压版mysql安装教程 my.ini配置文件 [mysqld] # 设置mysql的安装目录 basedir=D:/Program Files (x86)/...sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES skip-grant-tables default-storage-engine=INNODB

    mysql-5.6.22-winx64的免安装配置方法.docx

    # 设置为 MYSQL 的安装目录 basedir=D:\Program Files\mysql-5.6.22-winx64 # 设置为 MYSQL 的数据目录 datadir=D:\Program Files\mysql-5.6.22-winx64\data port=3306 character_set_server=utf8 sql_mode=...

    win7 64位下如何安装配置mysql-5.7.4-m14-winx64.docx

    sql-mode="STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION" ``` **注意**:`datadir`目录必须存在,如果不存在需要手动创建。 #### 四、添加环境变量 为了能够在任何位置通过命令行启动MySQL...

    最新老男孩Mysql标杆班day03.rar

    3.2020-开年标杆班-day03-MySQL-SQL_MODE介绍 4.2020-开年标杆班-day03-MySQL-字符集和校对规则 5.2020-开年标杆班-day03-MySQL-数据类型-1 6.2020-开年标杆班-day03-MySQL-数据类型-2 7.2020-开年标杆班-...

Global site tag (gtag.js) - Google Analytics