Signatur
Beschreibung
Der CUBRID DSN (Data Source Name) wird verwendet, um über die PDO-Schnittstelle eine Verbindung zu einem CUBRID-Datenbankserver herzustellen. Der DSN-String beginnt immer mit dem Präfix cubrid:, gefolgt von Schlüssel-Wert-Paaren, die durch Semikolons getrennt sind.
Die wichtigsten Parameter sind host (Hostname oder IP-Adresse des Servers), port (der TCP-Port, standardmäßig 33000) und dbname (der Name der Zieldatenbank). Optionale Parameter wie charset ermöglichen die Angabe des Zeichensatzes für die Verbindung.
Der DSN wird als erstes Argument an den PDO-Konstruktor übergeben, zusammen mit Benutzername und Passwort. CUBRID ist ein relationales Datenbankmanagementsystem, das besonders für webbasierte Anwendungen entwickelt wurde und native PHP-Unterstützung durch den PDO_CUBRID-Treiber bietet.
Um PDO_CUBRID nutzen zu können, muss der CUBRID-PHP-Treiber installiert und in der php.ini aktiviert sein. Unter Linux wird dieser häufig als pdo_cubrid.so bereitgestellt.
Parameter
| Name | Typ | Default | Beschreibung |
|---|---|---|---|
| $host Pflicht | string | Hostname oder IP-Adresse des CUBRID-Datenbankservers, z. B. localhost oder 192.168.1.10. |
|
| $port | int | 33000 | TCP-Port, auf dem der CUBRID-Broker-Dienst lauscht. Der Standardwert ist 33000. |
| $dbname Pflicht | string | Name der Zieldatenbank auf dem CUBRID-Server, zu der eine Verbindung hergestellt werden soll. | |
| $charset | string | Zeichensatz für die Verbindung, z. B. utf-8. Wird dieser Parameter weggelassen, verwendet der Treiber den Standard-Zeichensatz des Servers. |
Beispiele
Einfache PDO-Verbindung zu CUBRID herstellen
<?php
$dsn = 'cubrid:host=localhost;port=33000;dbname=demodb';
$username = 'dba';
$password = '';
try {
$pdo = new PDO($dsn, $username, $password);
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
echo "Verbindung zu CUBRID erfolgreich hergestellt.\n";
} catch (PDOException $e) {
echo 'Verbindungsfehler: ' . $e->getMessage() . "\n";
}
?>
CUBRID-Verbindung mit Zeichensatz und Abfrage
<?php
$dsn = 'cubrid:host=db.example.com;port=33000;dbname=shopdb;charset=utf-8';
$username = 'shop_user';
$password = 'geheimesPasswort';
try {
$pdo = new PDO($dsn, $username, $password, [
PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC,
]);
$stmt = $pdo->query('SELECT name, price FROM products LIMIT 5');
foreach ($stmt as $row) {
echo $row['name'] . ' – ' . $row['price'] . " EUR\n";
}
} catch (PDOException $e) {
echo 'Fehler: ' . $e->getMessage() . "\n";
}
?>
// Wichtig · Fallstricke
Treiberinstallation: PDO_CUBRID ist nicht standardmäßig in PHP enthalten. Der Treiber muss separat installiert werden, entweder über PECL (pecl install pdo_cubrid) oder durch das manuelle Kompilieren des CUBRID-PHP-Treibers. Anschließend muss extension=pdo_cubrid in der php.ini aktiviert werden.
Broker-Dienst: CUBRID verwendet eine Broker-Architektur. Der in port angegebene Port ist der Port des CUBRID-Brokers, nicht des eigentlichen Datenbankprozesses. Standardmäßig ist dies Port 33000.
Sicherheit: Passwörter und Zugangsdaten niemals direkt im Quellcode hart kodieren. Verwende Umgebungsvariablen oder externe Konfigurationsdateien, die außerhalb des Web-Roots gespeichert sind, um Anmeldedaten sicher zu verwalten.