|
pg_field_size
Returns the internal storage size of the named field
(PHP 4 >= 4.2.0, PHP 5)
Example 1930. Getting information about fields<?php The above example will output: column 0 Code Examples / Notes » pg_field_sizeij
To view the file structure of a table using a sql query select pg_class.relname, pg_attribute.attname, pg_type.typname, pg_type.typlen from pg_class, pg_attribute, pg_type where pg_class.relname = 'YOURTABLENAME' and pg_class.oid = pg_attribute.attrelid and pg_type.oid = pg_attribute.atttypid having attnum > 0 alex
How i can extract the struct of a Postgresql Table? I want to do a dynamic php code, that see the pg table, and print name, type and size of fields php
function get_create_syntax( $table ) { $qry = " SELECT * FROM $table LIMIT 1 "; $res = pg_query( $qry ); $row = pg_fetch_assoc( $res ); $create = "CREATE TABLE $table \n(\n"; $item = array(); for( $i = 0; $i < count( $row ); $i++ ) { $name = pg_field_name( $res, $i ); $type = pg_field_type( $res, $i ); $size = pg_field_size( $res, $i ); $item[$i] = '"'.$name.'" '.$type; $qry = " SELECT a.atttypmod AS size, a.attnotnull AS notnull FROM pg_attribute AS a, pg_class AS c WHERE c.relname = '$table' AND a.attrelid = c.oid AND a.attname = '$name' "; $res2 = pg_query( $qry ); $out = pg_fetch_object( $res2 ); if( $out -> size != -1 ) { $item[$i] .= '('.( $out -> size - 4 ).')'; } if( $out -> notnull == 't' ) $item[$i] .= ' NOT'; $item[$i] .= ' NULL'; } $create .= implode( ",\n", $item ) ."\n);"; return $create; } |
Change Languagepg_affected_rows pg_cancel_query pg_client_encoding pg_close pg_connect pg_connection_busy pg_connection_reset pg_connection_status pg_convert pg_copy_from pg_copy_to pg_dbname pg_delete pg_end_copy pg_escape_bytea pg_escape_string pg_execute pg_fetch_all_columns pg_fetch_all pg_fetch_array pg_fetch_assoc pg_fetch_object pg_fetch_result pg_fetch_row pg_field_is_null pg_field_name pg_field_num pg_field_prtlen pg_field_size pg_field_table pg_field_type_oid pg_field_type pg_free_result pg_get_notify pg_get_pid pg_get_result pg_host pg_insert pg_last_error pg_last_notice pg_last_oid pg_lo_close pg_lo_create pg_lo_export pg_lo_import pg_lo_open pg_lo_read_all pg_lo_read pg_lo_seek pg_lo_tell pg_lo_unlink pg_lo_write pg_meta_data pg_num_fields pg_num_rows pg_options pg_parameter_status pg_pconnect pg_ping pg_port pg_prepare pg_put_line pg_query_params pg_query pg_result_error_field pg_result_error pg_result_seek pg_result_status pg_select pg_send_execute pg_send_prepare pg_send_query_params pg_send_query pg_set_client_encoding pg_set_error_verbosity pg_trace pg_transaction_status pg_tty pg_unescape_bytea pg_untrace pg_update pg_version |