我有一个表1中的字段“年”,它定义为一个VARCHAR(255),我需要更新表2中'年份'的'num_years'。 'num_years'被定义为一个INT。PDO和MySQL类型切换
当我尝试,如果“年”被定义为3,它工作正常更新“NUM_YEARS”与“年”,但如果我定义“年”为“富”,它会更新“NUM_YEARS”以0
当我使用mysql_query
函数时,它会产生一个关于无效列“foo”或类似错误的错误,但是对于PDO,当我期待它时,它不会引发异常。
在这种方式下,我们要确保“NUM_YEARS”不会更新与0,如果“年”是数字。如果是这种情况,PDO是否有内置的异常抛出异常?
我正在使用PDO事务和准备语句。
呀多数民众赞成我目前做的,我做一个简单的'抛出新的异常(“变量不是整数”)'运行'!is_numeric'和捕捉一个水平了。这是我可以提出的一个解决方案的最佳选择,但我仍然认为PDO会选择这种方式会更好。毕竟,好的旧'mysql_query'可以把它拿起来,基本上是结束了。 – 2013-03-16 01:10:15