PHP MVC model structure Just looking for some feedback for one of my models I have for a project. I'm pretty happy with it but I was wondering if anyone had any optimization suggestions.

class ContactModel
{
    public function __construct($db)
    {
        try {
            $this-&gt;db = $db;
        } catch (PDOException $e) {
            exit('Database connection could not be established.');
        }
    }

    public function getBlastRecipients()
    {
        $sql = "SELECT Email FROM Contact WHERE Blast=?";
        $query = $this-&gt;db-&gt;prepare($sql);
        $query-&gt;execute(array('1'));
        return $query-&gt;fetchAll();
    }

    public function getBOLRecipients($custpoid)
    {
        $sql = "SELECT [CustPOID]
                          ,[POShipToRef]
                          ,cp.CarrId
                          ,cp.LoadID
                          ,c.CarrDesc
                          ,ct.Email
                          ,ct.ContactId
                      FROM [Sales].[dbo].[CustPO] as cp
                      LEFT OUTER JOIN Load as ld
                      on ld.LoadID = cp.LoadID
                      LEFT OUTER JOIN Carrier as c
                      on c.CarrId = cp.CarrId
                      LEFT OUTER JOIN Contact as ct
                      on c.CarrId = ct.CarrierId
                       WHERE CustPOID=?";
        $query = $this-&gt;db-&gt;prepare($sql);
        $query-&gt;execute(array($custpoid));
        return $query-&gt;fetchAll();
    }

    public function getDeliveryRequestEmailAddresses($custpoid)
    {
        //If a ShipToID is set, we want to return all email addresses associated with that customer, otherwise just return whatever email addresses are associated with the BillToID
        $sql = "SELECT
                       CASE
                        WHEN cp.CustShipToID IS NOT NULL THEN
                       c.Email
                       ELSE
                       cy.Email
                       END as Email
                         FROM CustPO cp
                         LEFT OUTER JOIN Contact as c
                         on cp.CustBillToID = c.CustId
                         LEFT OUTER JOIN Contact as cy
                         on cp.CustShipToID = c.CustId
                         WHERE CustPOID=?";
        $query = $this-&gt;db-&gt;prepare($sql);
        $query-&gt;execute(array($custpoid));
        return $query-&gt;fetchAll();
    }

    public function getEmailAddress($contact_id)
    {
        $sql = "Select Email FROM Contact WHERE ContactId=?";
        $query = $this-&gt;db-&gt;prepare($sql);
        $query-&gt;execute(array($contact_id));
        return $query-&gt;fetch();
    }
}
I just have a couple of small points:

Exiting in Constructor

You shouldn't just exit in a constructor, but throw an exception instead. But in this case, the only statement in the try block is an assignment, so there isn't really anything that can go wrong. You should just remove the entire try-catch block.

Naming

Your naming is somewhat inconsistent. For methods you use camelCase, and for parameters you either use all lowercase (which you should always avoid), or under_score. At the very least custpoid should be custpoId. 

I would also use somewhat more descriptive names inside the queries. Having c, cp, cy, as well as ct all in one query is a bit confusing.

SQL Style

Your SQL statements are also a bit inconsistent. If you write SQL keywords in all uppercase, do it always (see for example as, on, and Select).