我有一个数据库“书籍”
book_id author title
1 O'Brien, Tim MSXML3: A Comprehensive Guide
2 O'Brien, Tim Microsoft .NET: The Programming Bible
3 Kress, Peter Paradox Lost
4 Knorr Creepy Crawlies
5 Thurman, Paula Splish Splash我正在使用PDO开发我的数据库类。我的pdo字符串正在接受参数: obj =new PDO("mysql:host = localhost; dbname = testing",root,'')
最后,我们班正在发送查询:$query(say)=SELECT * FROM books WHERE book_id = ? AND author = ?
在这里?“表示准备好的查询的参数标记。当我准备查询时,比如:$result = obj->prepare($query);
将book_id和作者在$param中保存为:$param =array(1,Knorr);
现在我正在执行如下:$result->execute($param);
Itz而不是working.Query未执行。经过长时间的研究,我尝试了使用数据库名的查询表名,比如:SELECT * FROM testing.books WHERE book_id = ? AND author = ?和executed..it正在像黄油一样执行并且工作.
现在的问题是,这是happening??..no的文章提到的,它也可能发生。请告诉您,我必须在wid表名中使用数据库名?
发布于 2011-03-11 11:50:28
尝试使用从连接字符串中去掉的空格:
obj =new PDO("mysql:host=localhost;dbname=testing",root,'')在我看来,您很可能没有被放到连接上的“测试”数据库中,而且我猜您的连接字符串中的空格混淆了PDO初始化代码,并将您留在默认数据库中。
https://stackoverflow.com/questions/5272383
复制相似问题