Laravel 8.54.0 + Livewire:错误 SQLSTATE[IMSSP] 尝试绑定参数编号 2101。SQL 服务器最多支持 2100 个参数
Laravel 8.54.0 + Livewire : Error SQLSTATE[IMSSP] Tried to bind parameter number 2101. SQL Server supports a maximum of 2100 parameters
我使用 Laravel Framework 8.54.0 和 livewire。
我想为我的下拉表单调用数据。但是我得到 sqlstate 错误。谁能帮我找到解决这个问题的方法?
型号:
class Item extends Model
{
protected $table = 'item';
protected $primaryKey = 'idx';
public $timestamps = false;
public const CREATED_AT = 'd_in';
public const UPDATED_AT = 'd_edit';
protected $connection = 'mysql2';
}
Livewire 控制器:
$this->produk_ictn_row = Item::get();
查看:
<select disabled name="formkodeproduk" id="formkodeproduk" class="form-control @error('formkodeproduk') is-invalid @enderror" wire:model="produk_code">
@foreach($produk_ictn_row as $produk_ictn_row)
<option value="{{$produk_ictn_row->Kode}}">{{$produk_ictn_row->Kode}}</option>
@endforeach
</select>
它说你有超过 2100 条记录,所以查询应该在 where 查询中包含所有的记录!
好吧,在某些 sql 服务中,类似于 microsoft-sql sql 参数中的限制是 2100,因此您有 2 个选项:
首先你可以拆分你的查询来防止这个错误...
其次,您可以拆分 table 并进行一些并行查询。
我使用 Laravel Framework 8.54.0 和 livewire。 我想为我的下拉表单调用数据。但是我得到 sqlstate 错误。谁能帮我找到解决这个问题的方法?
型号:
class Item extends Model
{
protected $table = 'item';
protected $primaryKey = 'idx';
public $timestamps = false;
public const CREATED_AT = 'd_in';
public const UPDATED_AT = 'd_edit';
protected $connection = 'mysql2';
}
Livewire 控制器:
$this->produk_ictn_row = Item::get();
查看:
<select disabled name="formkodeproduk" id="formkodeproduk" class="form-control @error('formkodeproduk') is-invalid @enderror" wire:model="produk_code">
@foreach($produk_ictn_row as $produk_ictn_row)
<option value="{{$produk_ictn_row->Kode}}">{{$produk_ictn_row->Kode}}</option>
@endforeach
</select>
它说你有超过 2100 条记录,所以查询应该在 where 查询中包含所有的记录!
好吧,在某些 sql 服务中,类似于 microsoft-sql sql 参数中的限制是 2100,因此您有 2 个选项:
首先你可以拆分你的查询来防止这个错误... 其次,您可以拆分 table 并进行一些并行查询。