我正在为MySQL数据库构建PHP / HTML前端。
我正在尝试使用varchar(15)列定义的表。我可以运行(没有错误)一个带有20个字符长的字符串的insert语句。结果记录的列被截断为15个字符,但不会生成错误。
如何生成错误?
我知道界面可以进行错误检查,但我想知道如何让数据库拒绝数据。
答案 0 :(得分:1)
MySQL相当宽容,并会尽力优雅地接受你传递给它的任何东西,如果需要,可以静默转换/截断/归零。
由于您不希望这样,您需要启用各种“严格”模式选项:http://dev.mysql.com/doc/refman/5.0/en/server-sql-mode.html