【发布时间】:2011-04-03 08:20:22
【问题描述】:
我一直在一个启用了 MySQL 严格模式的网站上工作。一个人有一个很长的用户代理字符串记录在我们的日志表中,不幸的是,用户代理字符串超出了列的限制,因此引发了警告。根本没有插入数据。
为了避免这样的麻烦,我应该禁用 MySQL 严格模式还是我应该自己想出一些东西(我正在使用 PHP)?
【问题讨论】:
-
您可以在插入之前在应用程序级别检查字符串的长度。
-
@Pekka:你会如何合理地做到这一点?我不想在软件上到处调用方法。
-
好吧,您大概必须在某个地方转义传入的数据。一个
substr()可以工作并且不会增加太多的混乱。如果您的应用程序以其他方式使用严格模式(这很好),我会走那条路并保持模式不变
标签: php mysql strict-mode