php无法删除mssql中记录
mssql 中表的结构如下:
因为hr_id是 mssql 生成的 uniqueidentifier 格式的字符串,我无法用 php 读取这一字符串,都是通过 mssql的查询出来的字值,现在我比如想删除上图中的第一条数值,点删除后无法删除该记录:
上一页面删除链接的部分代码如下:
//========================================
echo "
删除 | 修改
| ";
==========================================
del语句如下: require_once("c_class.php");
require_once("c_init.php");
$db=new msSQL($db_IP,$db_user,$db_sa,$db_dbName,"conn");
//mssql_query("SET NAMES 'utf-8'");
//mssql_query('SET NAMES GB2312');
$sql = "delete from ".$tablea." where recv_time = ".urldecode($_GET[recv_time]);
$del=mysql_query($sql);
if($del){
echo "<script>alert('successful');history.back();</script>";
}else{
echo "<script>alert('fales');history.back();</script>";
}
==================================
现在出现无法删除的问题。
要怎么解决??
另外顺带问一下,php操作(修改/删除等)如何只指定一条记录? mysql中可以用 sql语句 limit 作出限制,但是好像mssql 没有这个 limit 参数对 sql语句作限制,要怎样写php 操作 mssql 的sql语句??
回复讨论(解决方案)
$sql = "delete from ".$tablea." where recv_time = '".urldecode($_GET[recv_time])."'";
Copier après la connexion
少了单引号。
更正后还是一样,无法删除记录。
更正后还是一样,无法删除记录。
打印出 $sql看下
echo 出的$sql语句如下:
delete from hr_atd_recv where recv_time = '2013-03-27 17:44:00'
在mssql 查询分析器中可以正确运行。
不知为何,通过 php 就是不能运行。晕!!
自已搞定了,第一楼中用错函数了。mysql_query 应写成 mssql_query.
太粗心了。