我正在从纯PHP到Laravel重写一个程序,我遇到了执行存储过程的问题(我没有写它).
当我尝试
$sheetLines = DB::select("exec XXXXXXX".dbo.PRICELIST '?'", [$id]);
Run Code Online (Sandbox Code Playgroud)
它继续运行,而PHP还没有达到最大内存.(增加内存只会让它运行更长时间)
同时,一个旧程序需要大约3秒钟并发送响应.
$tsql = "exec XXXXXXX.".dbo.PRICELIST '".$id."'";
Run Code Online (Sandbox Code Playgroud)
此外,当我从其他模块调用其他存储过程时,一切正常.
我注意到如果我尝试例如这样的事情也会发生:
DB::select(count(price) from orders group by price);
// would work with: count(price) as price_count
Run Code Online (Sandbox Code Playgroud)
我已经搜索了很多这个问题,但没有找到解决办法.我会感谢任何帮助
我正在尝试将普通 SQL 查询移至 Laravel 查询生成器。
这不是我第一次这样做,但现在“出现了不同的情况”。
我需要为连接设置排序规则,在普通 SQL 中这是没有问题的:
"...
LEFT OUTER JOIN " . $pltable1 . " on PL01001=supplier collate Latvian_BIN
..."
Run Code Online (Sandbox Code Playgroud)
当我尝试时 Laravel 抛出错误:
->leftJoin($pltable1, "PL01001", "=", "supplier");
Run Code Online (Sandbox Code Playgroud)
无法解决等于操作中“SQL_Latin1_General_CP1_CI_AS”和“Latvian_BIN”之间的排序规则冲突。
我知道这是因为我没有指定连接排序规则,但我不知道如何执行此操作。有没有人遇到过类似的事情并找到解决方案?
PS 我无法更改表本身的默认排序规则
我正在使用Laravel,但这不应该在这个问题中发挥作用:
我收到错误:
未定义的索引:AutoID
在这:
dump($row); // outputting assoc array on screen
$id = $row['AutoID']; // getting error here
Run Code Online (Sandbox Code Playgroud)
这就是数组输出的样子:
array:8 [?
"AutoID" => "6"
"Numurs" => "XXXX"
"Auto" => "Opel Astra"
"IzlaidumaGads" => "2007"
"BakasTilpums" => "52.00"
"KontaktiID" => "41"
"Piezimes" => "NULL"
"Slegts" => "1"
]
Run Code Online (Sandbox Code Playgroud)
如您所见 - 数组以索引"AutoID"开头.有谁知道为什么会发生这种情况?
代码是从foreach循环中删除的,但是2行实际上是彼此跟随的,而$ row在代码中的任何地方都没有被修改.
此外,如果我尝试使用例如$ row ['Auto'] - 没有错误
完整代码:
private function storeCars($arrAuto) {
$idAssoc = [];
foreach ($arrAuto as $row) {
$car = new Car;
$car->title = $row['Auto'];
$car->plate_number = $row['Numurs']; …Run Code Online (Sandbox Code Playgroud) 我设法实现了我的设计,但感觉有点像黑客.
所以我正在使用这个表,现在单元格大小看起来与我想要的完全一样,但是我必须在我的表格上添加额外的行(并隐藏它,但不是在示例中,所以它更容易理解) .因此,如果您尝试删除该顶行,您可以看到它们如何搞砸(描述字段看起来不一样).
http://jsfiddle.net/nooorz24/cea57mhd/4/
table {
width: 100%;
}
table td {
border: 1px solid black;
}Run Code Online (Sandbox Code Playgroud)
<table>
<tr>
<td style="width: 1px;"></td>
<td style="width: 10000px;"></td>
<td style="width: 1px;"></td>
<td style="width: 10000px;"></td>
</tr>
<tr>
<td style="width: 1px;">IMG</td>
<td style="width: 10000px;" colspan="2">Description text</td>
<td></td>
</tr>
<tr>
<td colspan="2"></td>
<td style="width: 1px;">IMG</td>
<td style="width: 10000px;">Description text</td>
</tr>
</table>Run Code Online (Sandbox Code Playgroud)
至于我能理解这是因为我尝试设置宽度已经COLSPAN =细胞"2"和HTML不懂得如何与合作.
这可以在不添加额外行的情况下解决吗?