当前位置:  数据库>mysql

如何开启mysql中的严格模式

    来源: 互联网  发布时间:2014-10-11

    本文导语:  很多集成的PHP环境(PHPnow WAMP Appserv等)自带的MySQL貌似都没有开启MySQL的严格模式,何为MySQL的严格模式,简单来说就是MySQL自身对数据进行严格的校验(格式、长度、类型等),比如一个整型字段我们写入一个字符串类型的数据...

很多集成的PHP环境(PHPnow WAMP Appserv等)自带的MySQL貌似都没有开启MySQL的严格模式,何为MySQL的严格模式,简单来说就是MySQL自身对数据进行严格的校验(格式、长度、类型等),比如一个整型字段我们写入一个字符串类型的数据,在非严格模式下MySQL不会报错,同样如果定义了char或varchar类型的字段,当写入或更新的数据超过了定义的长度也不会报错。

我认为这个对于编程来说没有任何好处,虽然我们尽量在代码中做数据校验。MySQL开启了严格模式从一定程序上来讲是对我们代码的一种测试,如果我们的开发环境没有开启严格模式在开发过程中也没有遇到错误,那么在上线或代码移植的时候将有可能出现不兼容的情况,因此在开发过程做最好开启MySQL的严格模式。

如何开启?
1.可以通过执行SQL语句来开启,但是只对当前连接有效,下面是SQL语句:
代码如下:

set sql_mode="STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION";

2.通过修改MySQL的配置文件,在配置文件中查找sql-mode,将此行修改成为:
代码如下:

sql-mode="STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"

如果查找不到sql-mode=则在[mysqld]下加入即可,推荐第二种方法,可以一劳永逸。

    
 
 
 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 在MyEclipse中设开启xml文件自动提示和自动完成功能
  • windows服务器中检测PHP SSL是否开启以及开启SSL的方法
  • 编程技术其它 iis7站长之家
  • suse11 如何查看防火墙是否关闭,远程桌面是否开启,sshd和vsftpd这些服务是否开启?
  • 呼唤大牛,大牛降临护乎!!!(linux,开启进程问题)
  • Linux 编程怎么样在程序开启一个程序,和关闭一个程序?
  • 如何查看framebuffer是否已经开启?
  • [高分求图]linux系统,开启后的截图。
  • 用什么命令用来查询某个功能是否开启了?比如是NFS
  • 请问linux的开启服务如何关闭?
  • 请教:防火墙如何正确开启80端口? 谢谢!
  • 高分求解:如何开启LINUX中的telnet服务(23端口)
  • android 如何获取MCC/MNC控制小区广播的开启
  • android实现关闭或开启移动网络数据
  • android开启免提切换功能示例
  • 开启SNMP
  • redhat9 如何开启3D加速啊????
  • 怎么开启我的SSH服务?
  • linux下用什么API去读/改IP、读/改网关、开启/关闭DHCP?
  • fedora8开启telnet服务问题
  • SSHD服务已经启动成功,但是netstat -nat 看不到对应端口的开启?


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3