【发布时间】:2013-10-09 01:10:58
【问题描述】:
从命令行 (sqlcmd) 运行时,此查询有效。我不知道如何使它在 php 脚本中工作。
exec sp_executesql N'select N2."Name" from (("dbo"."BasicAnimal" N0 left join "dbo"."AnimalGroup" N1 on (N0."Group" = N1."OID")) left join "dbo"."AbstractGroup" N2 on (N1."OID" = N2."OID"))where (N0."GCRecord" is null and (((N0."IsCulled" = @p0) and N0."ExitDate" is null) or (not (N0."Group" is null) and N0."ExitDate" is null)))',N'@p0 nvarchar(8)',@p0=N'False'
go
如果我将上面的查询从 php 脚本中换成类似这样的基本查询:
select * from dbo.AnimalGroup
它有效...
问题是查询本身包含单引号和双引号,所以我无法创建像这样的 php 变量:
$sql='query goes here'
或
$sql="query goes here"
【问题讨论】:
-
查看 PHP 手册中的示例:php.net/manual/en/mysqli.query.php
-
...当您通过 PHP 运行顶级查询时,您遇到了哪些错误?您可能需要重写它以使其更友好
-
每当有人忘记使用 Markdown 时,John Gruber 就会在内心深处死去,en.wikipedia.org/wiki/Markdown
-
我知道这是一个非常丑陋的查询。我不得不使用数据库跟踪程序来捕获它。我是 sql 新手,这是我弄清楚如何从数据库中获取所需信息的唯一方法。
标签: php sql sql-server sqlsrv