免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 3477 | 回复: 8
打印 上一主题 下一主题

update语句在mssql中遇到的问题 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2008-07-31 04:11 |只看该作者 |倒序浏览
update语句在mssql中遇到的问题在mysql下运行是ok的,部分代码如下:

$sqlUpdate = sprintf ( "UPDATE cell SET state='%s',operator='%s',time='%s',reason='%s' WHERE cellname='%s'", $_POST["txtState"][$i],$_POST["txtOperator"][$i],$_POST["txtTime"][$i],$_POST["txtReason"][$i],$_POST["hidcellname"][$i]);
mysql_query ( $sqlUpdate ) or die ( mysql_error() );
$a = mysql_affected_rows ( $link );         
if ( $a != -1 && $a != 0) $count++;


然而换了sql server的数据库之后,就发现有问题了,代码如下:

$sqlUpdate = sprintf ( "UPDATE cell SET state='%s',operator='%s',time='%s',reason='%s' WHERE cellname='%s'", $_POST["txtState"][$i],$_POST["txtOperator"][$i],$_POST["txtTime"][$i],$_POST["txtReason"][$i],$_POST["hidcellname"][$i]);
mssql_query ( $sqlUpdate ) or die ( mssql_error() );
$a =mssql_affected_rows ($link);
if ( $a != -1 && $a != 0) $count++;

大家也发现了,就是标红的地方有所不同,其他地方是完全一样的,为什么使用mssql就不成功呢?
此外,我还发现,php下使用mysql的select语句,移植到mssql下也没问题,update语句移植过来的时候就要出问题。

难道是php5中不能使用mssql_affected_rows函数?

请教各位高手!

论坛徽章:
1
技术图书徽章
日期:2013-12-05 23:25:45
2 [报告]
发表于 2008-07-31 09:20 |只看该作者
不成功是怎么个不成功法呢?

是返回失败,还是指令无法执行?

返回错误信息是什么?

另外,你认为mssql是mysql开发的么?

还有,你看了手册么:
mssql_rows_affected
(PHP 4 >= 4.0.4, PHP 5, PECL odbtp:1.1.1-1.1.4)

mssql_rows_affected — Returns the number of records affected by the query

论坛徽章:
1
2015年迎新春徽章
日期:2015-03-04 09:55:28
3 [报告]
发表于 2008-07-31 10:55 |只看该作者
函数都写错了,肯定会报你undefined function的,楼主没看到?

论坛徽章:
0
4 [报告]
发表于 2008-07-31 14:37 |只看该作者
to:HonestQiao
出错提示:
Call to undefined function mssql_affected_rows() in E:\wwjks\web\celloff.php on line 37

我查了手册,没看出啥问题

谢谢兄弟了!

论坛徽章:
0
5 [报告]
发表于 2008-07-31 14:38 |只看该作者
toinglu1983

没看出哪里写错了啊!我改成了mssql_rows_affected,还是一样的结果啊!

论坛徽章:
0
6 [报告]
发表于 2008-07-31 14:41 |只看该作者
mssql_affected_rows mysql_affected_rows 返回0不是表示执行出错,而是没有影响的记录,比如,UPDAE前后数据没有变化,则影响记录数是0;
如果有错,应该会执行die ( mssql_error() );

论坛徽章:
0
7 [报告]
发表于 2008-07-31 14:46 |只看该作者
对不起,确实是写错了,函数改成mssql_rows_affected之后,就可以了!

谢谢楼上的两位兄弟!

论坛徽章:
0
8 [报告]
发表于 2008-08-02 12:06 |只看该作者
函数名写错属于低级错误啊!

论坛徽章:
0
9 [报告]
发表于 2008-08-02 16:32 |只看该作者
Call to undefined function mssql_affected_rows() in E:\wwjks\web\celloff.php on line 37

都没有这个函数你怎么调用?

php.ini打开mssql了?
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP