CUBRID Functions (PDO_CUBRID)
Einführung
PDO_CUBRID is a driver that implements the PHP Data Objects (PDO) interface to enable access from PHP to CUBRID databases.
Hinweis:
Current version of PDO_CUBRID doesn't support persistent connection now.
Installation
To build the PDO_CUBRID extension, the CUBRID DBMS must be installed on the same system as PHP. PDO_CUBRID is a » PECL extension, so follow the instructions in Installation of PECL extensions to install the PDO_CUBRID extension. Issue the configure command to point to the location of your CUBRID base dir as follows:
$ ./configure --with-pdo-cubrid=/path/to/CUBRID[,shared]
Eine DLL-Datei für diese PECL-Erweiterung steht derzeit nicht zur Verfügung. Weitere Details finden Sie im Abschnitt zum Kompilieren für Windows. Detailed information about installation on Linux and Windows manually, please read build-guide.html in PECL package CUBRID for reference.
Features
Feature | Description |
---|---|
Scrollable cursors | PDO_CUBRID supports scrollable cursors. The default cursor type is forward only, and you can use parameter driver_options in PDO::prepare() to change cursor type. |
Timeout | PDO_CUBRID supports sql statement execution timeout setting; You can use PDO::setAttribute() to set timeout value. |
Autocommit_mode and Transaction |
PDO_CUBRID supports both autocommit_mode and transaction, and
autocommit_mode is enabled by default. You can use
PDO::setAttribute() to change its state.
If you use PDO::beginTransaction() to begin a transaction, it will disable autocommit_mode automatically and restore it after PDO::commit() or PDO::rollBack(). Note that before disabling the autocommit_mode, any pending work is automatically committed. |
Multiple SQL Statements | PDO_CUBRID supports Multiple SQL statements. Multiple SQL statements are separated by semicolons (;) |
Schema Information | PDO_CUBRID implements a function PDO::cubrid_schema() to get schema information. |
LOBs | PDO_CUBRID supports BLOB/CLOB data type. The LOB in PDO is
represented as a stream, so you can insert LOBs by binding a stream,
and get LOBs by reading a stream returned by CUBRID PDO. For example:
Beispiel #1 Insert LOBs in CUBRID PDO
<?php
Beispiel #2 Fetch LOBs in CUBRID PDO
<?php |
Column meta |
The PDOStatement::getColumnMeta() in CUBRID PDO
will return an associative array containing the following values:
|
Collection Data Type | PDO_CUBRID supports SET/MULTISET/SEQUENCE data type. If you don't specify data type,
the default data type is char,for example:
Beispiel #3 Insert set in CUBRID PDO with default data type.
<?php
Beispiel #4 Specify data type when insert set in CUBRID PDO
<?php
|
Vordefinierte Konstanten
Die folgenden Konstanten werden vom Treiber
definiert und sind nur verfügbar, wenn die Extension entweder in PHP einkompiliert
oder dynamisch zur Laufzeit geladen wurde. Weiterhin sind diese Konstanten
treiberspezifisch und sollten nur mit diesem Treiber benutzt werden. MySQL-spezifische
Attribute mit dem PostgreSQL Treiber zu nutzen, kann zu unerwarteten Ergebnissen
führen. Kann Ihr Code mit verschiedenen Treibern arbeiten, so können Sie
PDO::getAttribute() benutzen, um mit
PDO_ATTR_DRIVER_NAME
den aktuellen Treiber zu
ermitteln.
The following constants can be used when setting the database attribute. They can be passed to PDO::getAttribute() or PDO::setAttribute().
Constant | Description |
---|---|
PDO::CUBRID_ATTR_ISOLATION_LEVEL | Transaction isolation level for the database connection. |
PDO::CUBRID_ATTR_LOCK_TIMEOUT | Transaction timeout in seconds. |
PDO::CUBRID_ATTR_MAX_STRING_LENGTH | Read only. The maximum string length for bit, varbit, char, varchar, nchar, nchar varying data types when using CUBRID PDO API. |
The following constants can be used when setting the transaction isolation level. They can be passed to PDO::getAttribute() or returned by PDO::setAttribute().
Constant | Description |
---|---|
PDO::TRAN_COMMIT_CLASS_UNCOMMIT_INSTANCE | The lowest isolation level (1). A dirty, non-repeatable or phantom read may occur for the tuple and a non-repeatable read may occur for the table as well. |
PDO::TRAN_COMMIT_CLASS_COMMIT_INSTANCE | A relatively low isolation level (2). A dirty read does not occur, but non-repeatable or phantom read may occur. |
PDO::TRAN_REP_CLASS_UNCOMMIT_INSTANCE | The default isolation of CUBRID (3). A dirty, non-repeatable or phantom read may occur for the tuple, but repeatable read is ensured for the table. |
PDO::TRAN_REP_CLASS_COMMIT_INSTANCE | A relatively low isolation level (4). A dirty read does not occur, but non-repeatable or phantom read may. |
PDO::TRAN_REP_CLASS_REP_INSTANCE | A relatively high isolation level (5). A dirty or non-repeatable read does not occur, but a phantom read may. |
PDO::TRAN_SERIALIZABLE | The highest isolation level (6). Problems concerning concurrency (e.g. dirty read, non-repeatable read, phantom read, etc.) do not occur. |
The following constants can be used when getting schema information. They can be passed to PDO::cubrid_schema().
Constant | Description |
---|---|
PDO::CUBRID_SCH_TABLE | Get name and type of table in CUBRID. |
PDO::CUBRID_SCH_VIEW | Get name and type of view in CUBRID. |
PDO::CUBRID_SCH_QUERY_SPEC | Get the query definition of view. |
PDO::CUBRID_SCH_ATTRIBUTE | Get the attributes of table column. |
PDO::CUBRID_SCH_TABLE_ATTRIBUTE | Get the attributes of table. |
PDO::CUBRID_SCH_METHOD | Get the instance method. The instance method is a method called by a class instance. It is used more often than the class method because most operations are executed in the instance. |
PDO::CUBRID_SCH_TABLE_METHOD | Get the class method. The class method is a method called by a class object. It is usually used to create a new class instance or to initialize it. It is also used to access or update class attributes. |
PDO::CUBRID_SCH_METHOD_FILE | Get the information of the file where the method of the table is defined. |
PDO::CUBRID_SCH_SUPER_TABLE | Get the name and type of table which table inherites attributes from. |
PDO::CUBRID_SCH_SUB_TABLE | Get the name and type of table which inherites attributes from this table. |
PDO::CUBRID_SCH_CONSTRAINT | Get the table constraints. |
PDO::CUBRID_SCH_TRIGGER | Get the table triggers. |
PDO::CUBRID_SCH_TABLE_PRIVILEGE | Get the privilege information of table. |
PDO::CUBRID_SCH_COL_PRIVILEGE | Get the privilege information of column. |
PDO::CUBRID_SCH_DIRECT_SUPER_TABLE | Get the direct super table of table. |
PDO::CUBRID_SCH_PRIMARY_KEY | Get the table primary key. |
PDO::CUBRID_SCH_IMPORTED_KEYS | Get imported keys of table. |
PDO::CUBRID_SCH_EXPORTED_KEYS | Get exported keys of table. |
PDO::CUBRID_SCH_CROSS_REFERENCE | Get reference relationship of tow tables. |
Inhaltsverzeichnis
- PDO_CUBRID DSN — Connecting to CUBRID databases
- PDO::cubrid_schema — Get the requested schema information
Deutsche Übersetzung
Sie haben gebeten, diese Seite auf Deutsch zu besuchen. Momentan ist nur die Oberfläche übersetzt, aber noch nicht der gesamte Inhalt.Wenn Sie mir bei Übersetzungen helfen wollen, ist Ihr Beitrag willkommen. Alles, was Sie tun müssen, ist, sich auf der Website zu registrieren und mir eine Nachricht zu schicken, in der Sie gebeten werden, Sie der Gruppe der Übersetzer hinzuzufügen, die Ihnen die Möglichkeit gibt, die gewünschten Seiten zu übersetzen. Ein Link am Ende jeder übersetzten Seite zeigt an, dass Sie der Übersetzer sind und einen Link zu Ihrem Profil haben.
Vielen Dank im Voraus.
Dokument erstellt 30/01/2003, zuletzt geändert 26/10/2018
Quelle des gedruckten Dokuments:https://www.gaudry.be/de/php-rf-ref.pdo-cubrid.html
Die Infobro ist eine persönliche Seite, deren Inhalt in meiner alleinigen Verantwortung liegt. Der Text ist unter der CreativeCommons-Lizenz (BY-NC-SA) verfügbar. Weitere Informationen auf die Nutzungsbedingungen und dem Autor.
Referenzen
Diese Verweise und Links verweisen auf Dokumente, die während des Schreibens dieser Seite konsultiert wurden, oder die zusätzliche Informationen liefern können, aber die Autoren dieser Quellen können nicht für den Inhalt dieser Seite verantwortlich gemacht werden.
Der Autor Diese Website ist allein dafür verantwortlich, wie die verschiedenen Konzepte und Freiheiten, die mit den Nachschlagewerken gemacht werden, hier dargestellt werden. Denken Sie daran, dass Sie mehrere Quellinformationen austauschen müssen, um das Risiko von Fehlern zu reduzieren.