Таблица обновления PostgreSQL с двумерным массивом - PullRequest
0 голосов
/ 19 сентября 2018

Я хочу обновить таблицу с двумерным массивом.Массив выглядит так:

0:
longdescription: ""
order_nr: "1"
parts_id: "7478"
pos_description: "Zylinderkopfdichtung      "
pos_discount: 0
pos_emp: "0"
pos_id: "115486"
pos_instruction: false
pos_price: "062.18"
pos_qty: "01.00"
pos_status: "gelesen"
pos_total: "62.18"
pos_unit: "Stck"

1: {order_nr: "2", , …}
2: {order_nr: "3", , …}
3: {order_nr: "4", , …}

Это текущий код:

$GLOBALS['dbh']->begin();
foreach( $data as $key => $value ){
    $GLOBALS['dbh']->update( $value['pos_instruction'] == 'true' ? 'instructions' : 'orderitems', array( 'position', 'parts_id', 'description', 'unit', 'qty', 'sellprice', 'discount', 'marge_total', 'u_id', 'status', 'longdescription'), array($value['order_nr'], $value['parts_id'], $value['pos_description'], $value['pos_unit'], $value['pos_qty'], $value['pos_price'], $value['pos_discount'], $value['pos_total'], $value['pos_emp'], $value['pos_status'], $value['longdescription']), 'id = '.$value['pos_id'] );
}
echo $GLOBALS['dbh']->commit();

Поскольку массив имеет значение, равное 20-50, в первом измерении, цикл foreach принимаеточень долгоВ связи с этим я ищу способ обновления таблиц (инструкций и элементов заказа) сразу из всего массива, не разбивая его на одномерные.

Cheers

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...