【问题标题】:Laravel 8.54.0 + Livewire : Error SQLSTATE[IMSSP] Tried to bind parameter number 2101. SQL Server supports a maximum of 2100 parametersLaravel 8.54.0 + Livewire : 错误 SQLSTATE[IMSSP] 试图绑定参数号 2101。SQL Server 最多支持 2100 个参数
【发布时间】:2021-09-02 03:26:47
【问题描述】:

我使用 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>

【问题讨论】:

    标签: php sql-server laravel laravel-8 laravel-livewire


    【解决方案1】:

    它说你有超过 2100 条记录,所以查询应该在 where 查询中包含所有这些记录!!

    在某些 sql 服务中,例如 microsoft-sql,sql 参数的限制是 2100 ,因此您有 2 个选项:

    首先您可以拆分查询以防止出现此错误... 其次,您可以拆分表并执行一些并行查询。

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-04-22
    • 1970-01-01
    • 1970-01-01
    • 2017-08-13
    • 2021-04-24
    • 2020-11-10
    • 2022-08-04
    • 2015-12-27
    相关资源
    最近更新 更多