自动修剪提交给MySQL的字符串长度

前端之家收集整理的这篇文章主要介绍了自动修剪提交给MySQL的字符串长度前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

当我向MysqL数据库提交表单字段时,有没有办法设置数据库自动丢弃超过数据字段长度的任何数据?

我知道我可以以编程方式执行此操作,但数据库是否可以设置为丢弃多余的而不会抛出错误

为清晰起见编辑

继承我的插入声明

sqltype="CF_sql_LONGVARCHAR"/>,sqltype="CF_sql_LONGVARCHAR"/>,sqltype="CF_sql_LONGVARCHAR"/>,sqltype="CF_sql_TIMESTAMP"/>,sqltype="CF_sql_LONGVARCHAR"/>,sqltype="CF_sql_VARCHAR"/>,sqltype="CF_sql_LONGVARCHAR"/>,sqltype="CF_sql_LONGVARCHAR"/>,sqltype="CF_sql_LONGVARCHAR"/>,sqltype="CF_sql_LONGVARCHAR"/>,sqltype="CF_sql_VARCHAR"/>
                        )
            

表字段patientPhone是VARCHAR(20)

如果我没有progamatically验证提交,只是在一个30个字符长的表单值爆炸我错了(当我认为它会做的只是存储前20个字符)

Data truncation: Data too long for column 'patientPhone1' at row 8

当我使用向导设置数据库时,我记得选择innodb和事务性以及传统仿真(如果我没记错的话,建议使用)

最佳答案
编辑:这不应该是接受的答案.

答案不正确:MysqL会截断超出指定列宽的任何插入值.

永远不应该依赖这种行为.

原文链接:https://www.f2er.com/mysql/433340.html

猜你在找的MySQL相关文章