sql >> Database teknologi >  >> RDS >> Mysql

Hvordan laver man en ordentlig mysqli-udvidelsesklasse med forberedte udsagn?

Tjek implementeringen af ​​Zend_Db , og især Zend_Db_Select . Faktisk kan du bare vælge at bruge det i stedet for at udvikle din egen. Eksempler:

 //connect to a database using the mysqli adapter
 //for list of other supported adapters see
 //http://framework.zend.com/manual/en/zend.db.html#zend.db.adapter.adapter-notes
$parameters = array(
                    'host'     => 'xx.xxx.xxx.xxx',
                    'username' => 'test',
                    'password' => 'test',
                    'dbname'   => 'test'
                   );
try {
    $db = Zend_Db::factory('mysqli', $parameters);
    $db->getConnection();
} catch (Zend_Db_Adapter_Exception $e) {
    echo $e->getMessage();
    die('Could not connect to database.');
} catch (Zend_Exception $e) {
    echo $e->getMessage();
    die('Could not connect to database.');
}

//a prepared statement
$sql = 'SELECT * FROM blah WHERE id = ?';
$result = $db->fetchAll($sql, 2);

//example using Zend_Db_Select
$select = $db->select()
             ->from('blah')
             ->where('id = ?',5);
print_r($select->__toString());
$result = $db->fetchAll($select);

//inserting a record
$row = array('name' => 'foo',
             'created' => time()
            );
$db->insert('blah',$row);
$lastInsertId = $db->lastInsertId();

//updating a row
$data = array(
    'name'      => 'bar',
    'updated'   => time()
);

$rowsAffected = $db->update('blah', $data, 'id = 2');    


  1. Sådan ændrer du kolonner eller genererer Alter-scripts ved at bruge GUI i SQL Server - SQL Server / T-SQL vejledning del 38

  2. Ved at bruge Docker får jeg fejlen:SQLSTATE[HY000] [2002] Ingen sådan fil eller mappe

  3. Løndatamodel

  4. Top 10 grunde til at bruge Access og Excel sammen