首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >用PHP编写的ODBC预准备语句

用PHP编写的ODBC预准备语句
EN

Stack Overflow用户
提问于 2011-04-22 22:18:33
回答 2查看 14.2K关注 0票数 16

我尝试在PHP中使用odbc_prepare和odbc_execute,如下所示:

代码语言:javascript
复制
$pstmt=odbc_prepare($odb_con,"select * from configured where param_name='?'");
$res=odbc_execute($pstmt,array('version'));
var_dump($res);  //bool(true)
$row = odbc_fetch_array($pstmt);
var_dump($row);  //bool(false)

第一个var_dump返回true,因此执行成功,但没有返回任何行。确实存在param_name =‘版本’的行。为什么没有返回行?

为了让事情变得有趣,我用php运行了另一个非常简单的例子,使用了一个准备好的insert。

代码语言:javascript
复制
$pstmt=odbc_prepare($odb_con,"insert into tmp1 values(?,'?')");

这一行本身向数据库中插入了一行!!这肯定是错的吧?输入的数据是第一列=空白,第二列=?

任何关于如何开始修复这个问题的建议都将不胜感激,谢谢。

编辑:这是在PHP 5.2.8中

EN

回答 2

Stack Overflow用户

发布于 2011-04-22 23:12:55

编辑:

啊,忽略我,误读php.net

odbc_fetch_array接受odbc_execute的结果作为它的参数,您似乎是在传递准备好的语句。

票数 2
EN

Stack Overflow用户

发布于 2011-05-06 07:17:48

你有没有试过用双引号?即

代码语言:javascript
复制
$res=odbc_execute($pstmt,array("version"));
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5756369

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档