[Microsoft] [ODB C Драйвер 11 для SQL Сервер] [SQL Сервер] SQLSTATE: 42000, КОД: 3980 - PullRequest
0 голосов
/ 26 марта 2020

Какова возможная проблема с моей службой API, когда я выполняю запрос на вставку в базу данных SQL Server с помощью TableGateway Zf2, он всегда показывает с ошибкой:

SQLSTATE: 42000

Код: 3980

Сообщение: [Microsoft] [ODB C Драйвер 11 для SQL Сервер] [SQL Сервер] Запрос не был выполнен из-за прерывания пакета, это может быть вызвано сигналом сброса, отправленным клиентом, или другой запрос выполняется в том же сеансе, что делает сеанс занятым.

Вот мой пример моего кода:

<?php
namespace Unilever\V1\Rest\RouteDetailSku;

use ZF\ApiProblem\ApiProblem;
use Zend\Db\TableGateway\TableGateway;;

class RouteDetailSkuMapper {
    protected $adapter;
    protected $table;
    function __construct($adapter) {
        $this->adapter = $adapter;
        $this->table = new TableGateway("route_detail_order", $this->adapter);
    }

    function save($data) {

        try{
           $this->table->insert((array) $data);
           $generatedData['data']  = $this->table->select((array) $data)->current();
            return new ApiProblem(201, "Success", "Route Detail SKU", "Create Route Detail SKU", (array) $generatedData);
        } catch(\Exception $e) {
            echo $e->getMessage();
        } catch(\RuntimeException $e){
            echo $e->getMessage();
        }
    }
}

Это только отображается на INSERT, но при выполнении запроса выбора все в порядке. Как я могу решить это?

...