PDO::cubrid_schema

(PECL PDO_CUBRID >= 8.3.0.0001)

PDO::cubrid_schemaGet the requested schema information

Description

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

This function is used to get the requested schema information from database. You have to designate table_name, if you want to get information on certain table, col_name, if you want to get information on certain column (can be used only with PDO::CUBRID_SCH_COL_PRIVILEGE).

The result of this function is returned as a two-dimensional array (column (associative array) * row (numeric array)). The following tables shows types of schema and the column structure of the result array to be returned based on the schema type.

Result Composition of Each Type
SchemaColumn NumberColumn NameValue
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 

Parameters

schema_type

Schema type that you want to know.

table_name

Table you want to know the schema of.

col_name

Column you want to know the schema of.

Return Values

Array containing the schema information, when process is successful;

FALSE, when process is unsuccessful

Examples

Example #1 A PDO::cubrid_schema() example

This example shows how to get primary key and foreign keys of table game.

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

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

The above example will output:

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