note 50271 added to function.pg-field-size

From: Date: Wed, 23 Feb 2005 13:49:50 +0000
Subject: note 50271 added to function.pg-field-size
Groups: php.notes 
Request: Send a blank email to php-notes+get-85430@lists.php.net to get a copy of this message
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; } ---- Manual Page -- http://www.php.net/manual/en/function.pg-field-size.php Edit -- http://master.php.net/manage/user-notes.php?action=edit+50271 Delete: added to the manual -- http://master.php.net/manage/user-notes.php?action=delete+50271&report=yes&reason=added+to+the+manual Delete: bad code -- http://master.php.net/manage/user-notes.php?action=delete+50271&report=yes&reason=bad+code Delete: spam -- http://master.php.net/manage/user-notes.php?action=delete+50271&report=yes&reason=spam Delete: useless -- http://master.php.net/manage/user-notes.php?action=delete+50271&report=yes&reason=useless Delete: other reasons -- http://master.php.net/manage/user-notes.php?action=delete+50271&report=yes Reject -- http://master.php.net/manage/user-notes.php?action=reject+50271&report=yes Search -- http://master.php.net/manage/user-notes.php

« previous php.notes (#85430) next »