返回信息流$sql="update infotable SET address=
switch(
mapname like 'FloorB*' , replace(mapname,'FloorB','BUPT地下'),
mapname like 'Floor*', replace(mapname,'Floor','BUPT'))";
echo "本次执行的SQL语句为:";
echo "<br>";
echo $sql;
echo "<br>";
echo "*********************************";
echo "<br>";
$sql=iconv("UTF-8", "gb2312",$sql);
$result=odbc_exec($connid,$sql);
执行以上时报错,错误信息是乱码
Warning: odbc_exec() [function.odbc-exec]: SQL error: [Microsoft][ODBC Microsoft Access Driver] ���ʽ�� 'replace' ����δ���塣, SQL state 37000 in SQLExecDirect in E:\My Dropbox\Website\xampp\htdocs\PHP\Arc\manage-infotable.php on line 74
其中上面的SQl语句可以在Access中执行,没有错误
求大牛指点。。
这是一条镜像帖。来源:北邮人论坛 / www-technology / #10700同步于 2010/8/19
该镜像源已超过 30 天没有更新,可能在源站已被删除。
WWWTechnology机器人发帖
php连接Access执行SQl语句错误
jakievictor
2010/8/19镜像同步8 回复
订阅后,新回复会通过你的通知中心匿名送达。
8 条回复
可能是switch放在""内?
拿出来试试看?
【 在 jakievictor (Lee) 的大作中提到: 】
: $sql="update infotable SET address=
: switch(
: mapname like 'FloorB*' , replace(mapname,'FloorB','BUPT地下'),
: ...................
我获取了errormsg,更改了编码方式输出后发现提示是:replace函数未定义
网上说replace函数是内部函数
【 在 zezeha 的大作中提到: 】
: 可能是switch放在""内?
: 拿出来试试看?
: 【 在 jakievictor (Lee) 的大作中提到: 】
: ...................
switch是SQL语句里的
我这个SQL语句可以在Access里成功执行的
【 在 ericyosho 的大作中提到: 】
: 你在第一行的=后面,价格双引号,
: switch应该不是sql语句里面的吧?
: --
: ...................
没怎么用过access,估计是编码问题吧,最后为什么要转成gb的。
【 在 jakievictor (Lee) 的大作中提到: 】
: $sql="update infotable SET address=
: switch(
: mapname like 'FloorB*' , replace(mapname,'FloorB','BUPT地下'),
: ...................
因为SQL语句中的汉字的原因 不转换执行时有问题
【 在 xw2423 的大作中提到: 】
: 没怎么用过access,估计是编码问题吧,最后为什么要转成gb的。
: 【 在 jakievictor (Lee) 的大作中提到: 】
: : $sql="update infotable SET address=
: ...................
【 在 jakievictor 的大作中提到: 】
: 我获取了errormsg,更改了编码方式输出后发现提示是:replace函数未定义
: 网上说replace函数是内部函数
: 【 在 zezeha 的大作中提到: 】
: ...................
str_replace?