学说2:将数据插入关系表

时间:2017-02-18 10:58:07

标签: php doctrine-orm silex multiple-tables insert-into

我尝试使用silex框架将数据插入数据库。我的数据库有4个关系表。如何使用Doctrine2中的插入函数插入数据?我是否需要逐个添加数据到每个表?

我的代码:

$app->post('/reservations/', function (Request $request) use ($app, $DataProvider) {

$insertData = $DataProvider->getRequestData();

$newClientId = $DataProvider->addReservation($insertData);

if(false == $newClientId){
    return $app->json(['errorMessage' => 'Can not insert user'], 500);
}

// $tables = $DataProvider->getClient($newClientId);

return $app->json(['message' => 'Client created!', 'client' => $clientDetails])
});

public function addReservation($data)
{
    print_r ($data);
    unset($data['userID']);
    $result = $this->db->insert('users', $data);
    $lastID = $this->db->lastInsertId();
    if(!$result){
        return false;
    }

    return $this->db->lastInsertId();
}

My database structure:

我尝试插入的数组

Array ( [eventDate] => 11.02.2017 [bookingTime] => 10:00 [paid] => true [tableNumber] => 1 [name] => John[email] => pass123 [phone] => 1231231 )

来自服务器的响应:

  

DBALException.php第47行中的DBALException:   使用参数[“11.02.2017”执行'INSERT INTO用户(eventDate,bookingTime,付费,tableNumber,姓名,电子邮件,电话)VALUES(?,?,?,?,?,?,?)'时发生异常“10:00”,“true”,“1”,“John”,“pass123”,“1231231”]:

SQLSTATE [42S22]:未找到列:1054'字段列表'中的未知列'eventDate'

0 个答案:

没有答案