Start · Sprachen · PHP · Referenz · cubrid_connect

cubrid_connect

Funktion

Öffnet eine Verbindung zu einem CUBRID-Datenbankserver und gibt eine Verbindungsressource zurück.

seit PHP 5.0.0 Kategorie: db

Signatur

cubrid_connect(string $host, int $port, string $dbname, string $userid = "PUBLIC", string $passwd = "", bool $new_link = false): resource|false

Beschreibung

cubrid_connect() stellt eine Verbindung zu einem CUBRID-Datenbankserver her. CUBRID ist ein relationales Open-Source-Datenbanksystem, das besonders im koreanischen Raum und für Webanwendungen eingesetzt wird. Die Funktion gibt bei Erfolg eine Verbindungsressource zurück, die für alle nachfolgenden Datenbankoperationen benötigt wird.

Standardmäßig wird bei wiederholtem Aufruf mit identischen Parametern eine bereits bestehende Verbindung wiederverwendet (Verbindungs-Pooling). Wird der Parameter new_link auf true gesetzt, erzwingt die Funktion eine neue, eigenständige Verbindung, auch wenn bereits eine identische Verbindung besteht.

Die Verbindungsressource sollte nach Abschluss aller Datenbankoperationen explizit mit cubrid_disconnect() geschlossen werden, um Ressourcen freizugeben. Eine nicht geschlossene Verbindung wird spätestens am Ende des PHP-Skripts automatisch beendet.

Schlägt die Verbindung fehl – etwa wegen falscher Zugangsdaten, eines nicht erreichbaren Servers oder eines ungültigen Datenbanknamens – gibt die Funktion false zurück. Mit cubrid_error() bzw. cubrid_errno() kann die genaue Fehlerursache ermittelt werden.

Parameter

Name Typ Default Beschreibung
$host Pflicht string Hostname oder IP-Adresse des CUBRID-Datenbankservers, z. B. "localhost" oder "192.168.1.10".
$port Pflicht int Port-Nummer des CUBRID-Brokers auf dem Server. Der Standardport ist 33000.
$dbname Pflicht string Name der CUBRID-Datenbank, zu der eine Verbindung hergestellt werden soll.
$userid string PUBLIC Benutzername für die Authentifizierung am Datenbankserver. Standardmäßig "PUBLIC".
$passwd string Passwort des Datenbankbenutzers. Standardmäßig ein leerer String (kein Passwort).
$new_link bool false Wenn true, wird eine neue Verbindung erzwungen, auch wenn bereits eine Verbindung mit denselben Parametern existiert. Standardmäßig false.

Rückgabewert

Typ
resource|false
Beschreibung
Gibt bei Erfolg eine CUBRID-Verbindungsressource zurück, die für nachfolgende Datenbankoperationen verwendet werden kann. Im Fehlerfall wird false zurückgegeben.

Beispiele

Einfache Verbindung zu einem CUBRID-Server

<?php
$host   = 'localhost';
$port   = 33000;
$dbname = 'demodb';
$user   = 'dba';
$pass   = 'geheimes_passwort';

$conn = cubrid_connect($host, $port, $dbname, $user, $pass);

if ($conn === false) {
    echo 'Verbindung fehlgeschlagen: ' . cubrid_error();
    exit;
}

echo 'Verbindung erfolgreich hergestellt.';

// ... Datenbankoperationen ...

cubrid_disconnect($conn);
?>
Verbindung erfolgreich hergestellt.

Verbindung mit erzwungenem neuem Link und Fehlerbehandlung

<?php
$conn1 = cubrid_connect('localhost', 33000, 'demodb', 'dba', 'pass');

// Erzwingt eine neue, separate Verbindung
$conn2 = cubrid_connect('localhost', 33000, 'demodb', 'dba', 'pass', true);

if ($conn1 === false || $conn2 === false) {
    echo 'Fehler beim Verbindungsaufbau: ' . cubrid_error();
    echo ' (Fehlercode: ' . cubrid_errno() . ')';
    exit;
}

$result1 = cubrid_execute($conn1, 'SELECT * FROM nation LIMIT 3');
$result2 = cubrid_execute($conn2, 'SELECT * FROM athlete LIMIT 3');

// Verbindungen schließen
cubrid_disconnect($conn1);
cubrid_disconnect($conn2);

echo 'Beide Verbindungen erfolgreich verwendet und geschlossen.';
?>
Beide Verbindungen erfolgreich verwendet und geschlossen.

// Wichtig · Fallstricke

Sicherheitshinweis: Speichern Sie Zugangsdaten (Benutzername und Passwort) niemals direkt im Quellcode. Verwenden Sie stattdessen Umgebungsvariablen oder gesicherte Konfigurationsdateien außerhalb des Web-Roots.

Erweiterung erforderlich: Die cubrid_*-Funktionen sind nur verfügbar, wenn die PHP-Erweiterung cubrid installiert und in der php.ini aktiviert ist. Unter Linux kann sie über PECL installiert werden: pecl install cubrid.

Deprecation: Die ressourcenbasierte CUBRID-API gilt als veraltet. Für neuere Projekte wird die objektorientierte PDO-Schnittstelle mit dem CUBRID-PDO-Treiber empfohlen.