src/InsertQuery.php
public function build()
    {
        if (!$this->table) {
            throw new \RuntimeException("No tables provided for INSERT clause");
        }

        if (!$this->values) {
            throw new \RuntimeException("No values provided for INSERT clause");
        }

        $sql = ['INSERT INTO'];
        $sql[] = $this->table;

        $columns = array_keys($this->values[0]);
        $sql[] = '(' . implode(', ', $columns) . ')';

        $sql[] = 'VALUES';
        $values = [];

        foreach ($this->values as $row) {
            $row_values = [];
            foreach ($row as $value) {
                $row_values[] = $this->addPlaceholder($value);
            }

            $values[] = '(' . implode(', ', $row_values) . ')';
        }

        $sql[] = implode(', ', $values);

        $this->sql = implode(' ', $sql);
        $this->changed = false;
    }
public function build()
    {
        if (!$this->table) {
            throw new \RuntimeException("No tables provided for INSERT clause");
        }

        if (!$this->values) {
            throw new \RuntimeException("No values provided for INSERT clause");
        }

        $sql = ['INSERT INTO'];
        $sql[] = $this->table;

        $columns = array_keys($this->values[0]);
        $sql[] = '(' . implode(', ', $columns) . ')';

        $sql[] = 'VALUES';
        $values = [];

        foreach ($this->values as $row) {
            $row_values = [];
            foreach ($row as $value) {
                $row_values[] = $this->addPlaceholder($value);
            }

            $values[] = '(' . implode(', ', $row_values) . ')';
        }

        $sql[] = implode(', ', $values);

        $this->sql = implode(' ', $sql);
        $this->changed = false;
    }
Build the query,