public function pdoQueryBind($pSqlQuery, array $pBindings = null, $pReturnResults = true)
    {
        $returnValue = null;

        try {
            // Bind values to the prepared statement.
            $stmt = $this->pdo->prepare($pSqlQuery);

            // has to be an array with at least on value.
            if ($this->isArray($pBindings)) {
                foreach ($pBindings as $parameterName => $data) {
                    $stmt->bindValue($parameterName, $data[ 0 ], $data[ 1 ]);
                }
            }

            // Run the query
            $returnValue = $this->pdoQuery($stmt, $pReturnResults);
        } catch (Exception $pError) {
            throw new Exception(
                'A PDO Error has occurred.' . $pError->getMessage(),
                500,
                $pError
            );
        }

        return $returnValue;
    }