教程集 www.jiaochengji.com
教程集 >  脚本编程  >  php  >  正文 pdo->errorInfo()报HY093错误的解决办法

pdo->errorInfo()报HY093错误的解决办法

发布时间:2011-06-28   编辑:jiaochengji.com
教程集为您提供pdo->errorInfo()报HY093错误的解决办法等资源,欢迎您收藏本站,我们将为您提供最新的pdo->errorInfo()报HY093错误的解决办法资源
pdo做数据库兼容挺好用 的,特别做数据转换的时候,连接各种数据特别方便,但是偶然也会有些莫名奇妙的bug,也挺烦人,今天做数据库转换的时候写了个prepare语句。在execute的时候,我居然报HY093的错误,这个错误重来没见过呀,于是到又百度,又google的也没找到几篇文章,折腾了5,6个小时,最后才发现时我的sql语句有问题,但是pdo的errorInfo也没报出来这个sql语句的错误信息,害我怎么也找不到这个错误

我的sql语句是这么写的

$insertA = $ct_dbh->prepare("INSERT INTO cmstop_content(contentid,title,publishedby,pv,published,sourceid,catid,modelid,created,createdby) VALUES(:contentid,:title,:publishedby,:pv,:published,:sourceid,:catid,':modelid',':created',':createdby')") or die(print_r($ct_dbh->errorInfo(),true));

其实后面model,created,createdby完全不需要引号的,可是我就不知道是怎么鬼使神差的给加上了,等到后面execute的时候就报错了

$dataA = array(':contentid'=>$contentid,':title'=>$title,':publishedby'=>$publishedby,':pv'=>$pv,':published'=>$published,':sourceid'=>1,':catid'=>$catid,':modelid'=>1,':created'=>$published,':createdby'=>$publishedby); $insertA->execute($dataA) or die('insertA:'.print_r($insertA->errorInfo(),true));

我用errorInfo报了这样的错

insertA:Array ( [0] => HY093 )

也没给我更多的提示信息,害的我好找,不过也不能怪pdo了,谁让我犯这种低级错误呢

您可能感兴趣的文章:
php中pdo错误处理方法详解
php pdo函数库用法详解
有关PHP中PDO连接数据库的详细教程与实际操作演示
PDO连接数据报错could not find driver解决办法
学习使用PDO查询Mysql来避免SQL注入风险
php中PDO入门学习笔记
关于PHP中extension加载顺序问题的解决方法
php mysqli和mysql区别详解
PDO操作MYSQL(代码示例)
PDO与MySQLi:PHP数据库API之战

关键词: 其他web相关  pdo  errorCode  errorInfo  HY093  prepare   
[关闭]
~ ~