PDO::cubrid_schema

(PECL PDO_CUBRID >= 8.3.0.0001)

PDO::cubrid_schemaObtiene la información del esquema solicitada

Descripción

publicPDO::cubrid_schema(int$schema_type, string$table_name = ?, string$col_name = ?): array

Esta función se usa para obtener la información del esquema solicitada de una base de datos. Se ha de designar table_name, si se quiere obtener información sobre una cierta tabla, col_name, si se quiere obtener información sobre una cierta columna (se puede usar solamente con PDO::CUBRID_SCH_COL_PRIVILEGE).

El resultado de esta función es devuelto como un array de dos dimensiones (columna (array asociativo) * fila (array numérico)). La siguiente tabla muestra los tipos de esquemas y la estructura de columna del array resultante que se devuelve basándose en el tipo de esquema.

Composición del resultado de cada tipo
EsquemaNúmero de columnaNombre de columnaValor
PDO::CUBRID_SCH_TABLE1NAME 
 2TYPE0:system table 1:view 2:table
PDO::CUBRID_SCH_VIEW1NAME 
 2TYPE1:view
PDO::CUBRID_SCH_QUERY_SPEC1QUERY_SPEC 
PDO::CUBRID_SCH_ATTRIBUTE / PDO::CUBRID_SCH_TABLE_ATTRIBUTE1ATTR_NAME 
 2DOMAIN 
 3SCALE 
 4PRECISION 
 5INDEXED1:indexed
 6NOT NULL1:not null
 7SHARED1:shared
 8UNIQUE1:unique
 9DEFAULT 
 10ATTR_ORDERbase:1
 11CLASS_NAME 
 12SOURCE_CLASS 
 13IS_KEY1:key
PDO::CUBRID_SCH_METHOD / PDO::CUBRID_SCH_TABLE_METHOD1NAME 
 2RET_DOMAIN 
 3ARG_DOMAIN 
PDO::CUBRID_SCH_METHOD_FILE1METHOD_FILE 
PDO::CUBRID_SCH_SUPER_TABLE / PDO::CUBRID_SCH_DIRECT_SUPER_TABLE / PDO::CUBRID_SCH_SUB_TABLE1CLASS_NAME 
 2TYPE0:system table 1:view 2:table
PDO::CUBRID_SCH_CONSTRAINT1TYPE0:unique 1:index 2:reverse unique 3:reverse index
 2NAME 
 3ATTR_NAME 
 4NUM_PAGES 
 5NUM_KEYS 
 6PRIMARY_KEY1:primary key
 7KEY_ORDERbase:1
PDO::CUBRID_SCH_TRIGGER1NAME 
 2STATUS 
 3EVENT 
 4TARGET_CLASS 
 5TARGET_ATTR 
 6ACTION_TIME 
 7ACTION 
 8PRIORITY 
 9CONDITION_TIME 
 10CONDITION 
PDO::CUBRID_SCH_TABLE_PRIVILEGE / PDO::CUBRID_SCH_COL_PRIVILEGE1CLASS_NAME / ATTR_NAME 
 2PRIVILEGE 
 3GRANTABLE 
PDO::CUBRID_SCH_PRIMARY_KEY1CLASS_NAME 
 2ATTR_NAME 
 3KEY_SEQbase:1
 4KEY_NAME 
PDO::CUBRID_SCH_IMPORTED_KEYS / PDO::CUBRID_SCH_EXPORTED_KEYS / PDO::CUBRID_SCH_CROSS_REFERENCE1PKTABLE_NAME 
 2PKCOLUMN_NAME 
 3FKTABLE_NAMEbase:1
 4FKCOLUMN_NAME 
 5KEY_SEQbase:1
 6UPDATE_ACTION0:cascade 1:restrict 2:no action 3:set null
 7DELETE_ACTION0:cascade 1:restrict 2:no action 3:set null
 8FK_NAME 
 9PK_NAME 

Parámetros

schema_type

El tipo de esquema del que se quiere saber.

table_name

La tabla de la que se quiere conocer el esquema.

col_name

La columna de la que se quiere conocer el esquema.

Valores devueltos

Un array que contiene la información del esquema, cuando el proceso tiene éxito;

FALSE, cuando el proceso no tiene éxito

Ejemplos

Ejemplo #1 Un ejemplo de PDO::cubrid_schema()

Este ejemplo muestra cómo obtener la clave primaria y las claves foráneas de la tabla "game".

<?php
$lista_pk
= $gbd->cubrid_schema(PDO::CUBRID_SCH_PRIMARY_KEY, "game");
print_r($lista_pk);

$lista_fk = $gbd->cubrid_schema(PDO::CUBRID_SCH_IMPORTED_KEYS, "game");
print_r($lista_fk);
?>

El resultado del ejemplo sería:

Result: Array ( [0] => Array ( [CLASS_NAME] => game [ATTR_NAME] => athlete_code [KEY_SEQ] => 3 [KEY_NAME] => pk_game_host_year_event_code_athlete_code ) [1] => Array ( [CLASS_NAME] => game [ATTR_NAME] => event_code [KEY_SEQ] => 2 [KEY_NAME] => pk_game_host_year_event_code_athlete_code ) [2] => Array ( [CLASS_NAME] => game [ATTR_NAME] => host_year [KEY_SEQ] => 1 [KEY_NAME] => pk_game_host_year_event_code_athlete_code ) ) Array ( [0] => Array ( [PKTABLE_NAME] => athlete [PKCOLUMN_NAME] => code [FKTABLE_NAME] => game [FKCOLUMN_NAME] => athlete_code [KEY_SEQ] => 1 [UPDATE_RULE] => 1 [DELETE_RULE] => 1 [FK_NAME] => fk_game_athlete_code [PK_NAME] => pk_athlete_code ) [1] => Array ( [PKTABLE_NAME] => event [PKCOLUMN_NAME] => code [FKTABLE_NAME] => game [FKCOLUMN_NAME] => event_code [KEY_SEQ] => 1 [UPDATE_RULE] => 1 [DELETE_RULE] => 1 [FK_NAME] => fk_game_event_code [PK_NAME] => pk_event_code ) )
To Top