- php/
- 当从PHP运行时,带有子查询的查询既不返回数据也不返回错误
当从PHP运行时,带有子查询的查询既不返回数据也不返回错误
当从PHP运行时,带有子查询的查询既不返回数据也不返回错误,php,sql-server,Php,Sql Server,我已经准备好了对MSSQL数据库的查询。在Manager中执行时,它工作得非常好,但显然它不会向PHP脚本返回任何行。最有问题的部分可能是本专栏:
差异=t0.col1-isNull从表中选择t1.col1作为t1,其中t1.date=
从表中选择MAXt2.date作为t2,其中t2.datebd\u pobierzTabliceAsocjacyjna
{
$marka=$row['marka'];
$nrr=$row['nrr'];
$result.=.$row['Dzien'].$row[
我已经准备好了对MSSQL数据库的查询。在Manager中执行时,它工作得非常好,但显然它不会向PHP脚本返回任何行。最有问题的部分可能是本专栏:
差异=t0.col1-isNull从表中选择t1.col1作为t1,其中t1.date=
从表中选择MAXt2.date作为t2,其中t2.date
从base2.dbo.ODB_S_PO中选择NORMA,其中
在使用PHP和MS SQL时,我可以使用子查询吗?这些查询可以指向不同的数据库吗?我可以在一个PHP查询中排列多个语句吗,比如定义一个变量
编辑:过帐完整查询:
选择t0.TA_数据,
col1+“”+col2,
t0.TA_STAN_LICZNIKA,
差异=t0.TA_STAN_LICZNIKA-isNull从表1中选择t1.TA_STAN_LICZNIKA作为t1,其中t1.TA_数据=
从表1中选择MAXt2.TA_数据作为t2,其中t2.TA_数据
EDIT2:我尝试使用ManagementStudio中使用的帐户,以及专门用于web界面的帐户。根据建议,以下是几乎完整的PHP脚本:
$car=$_POST['id'];
包括“../bd.php”;
$nazwa_hosta=;
$username=;
$passwd=;
$baza=‘全球定位系统’;
//打印$\u邮政;
$res_dbase=新BD$nazwa_hosta、$username、$passwd、$baza;
$res_dbase->bd_polacz;
$query=选择标记A、NRR、,
CONVERTvarchar,[日期和时间],104作为Dzien,
日期和时间,
CASTDISTANCE作为浮动/1000作为距离,
Diff=cast0.DISTANCE-ISNULLSELECT t1.DISTANCE从报告中选择t1作为t1,其中t1.ID=
从报告中选择MAXt2.ID作为t2,其中t2.IDbd_zapytaj$query//代码在这里失败-否则我不会从服务器收到任何消息。我得到的唯一信息是,它将上下文更改为“gps”
{
回显mssql获取最后一条消息;
}
$marka=;
$nrr=;
$result=;
whilefalse!==$行=$res\u dbase->bd\u pobierzTabliceAsocjacyjna
{
$marka=$row['marka'];
$nrr=$row['nrr'];
$result.=.$row['Dzien'].$row['DATE\u TIME'].$row['Dist'].$row['Diff'].$row['Stac'].$row['Kier'].$PHP\u EOL;
}
$head=$nrr$marka;
$结果=;
$echo=remove_pl$head.$result,拉丁文2;//删除波兰字符,因为目标是在Windows-1250中编码的
echo$echo;
设置问题的格式以使其可读如果子查询编写得很好,并且您拥有访问所有相关资源所需的权限,则当然允许子查询。可以发布整个查询吗?通常,如果查询不返回行,则不应该查找特定列的问题。另一方面,如果列的表达式导致错误,则也不会返回任何行。那么,他们会产生任何错误吗?你试过在管理工作室运行它吗?是的,这就是我一直在做的。我一直在ManagementStudio中检查这个查询,在PHP代码中包含这个查询之前,我就是在那里设计的。这个问题仍然没有解决。查询既不返回结果,也不返回错误,在ManagementStudio中执行时效果非常好。