px_get_schema

(PECL paradox >= 1.0.0)

px_get_schemaDevuelve la definición de la base de datos (schema)

Descripción

px_get_schema ( resource $pxdoc [, int $mode = 0 ] ) : array

La función px_get_schema() devuelve la definición de la base de datos.

Parámetros

pxdoc

Identificador de recursos de la base de datos paradox devuelto por la función px_new().

mode

Si el parámetro opcional mode es PX_KEYTOLOWER o PX_KEYTOUPPER las claves de la matriz devuelta serán convertidas a minúsculas o mayúsculas. Si el parámetro mode es 0 o no pasado en todos, entonces el nombre de la clave será el mismo que el nombre del campo.

Valores devueltos

Devuelve la definición de un archivo de base de datos como una matriz asociada. El nombre de la clave es igual al nombre del campo. Cada elemento de la matriz en sí es una matriz asociada array que contiene los dos campos type y size. type es una de las constantes en la tabla Las constantes de los tipos de campo. size es el número de bytes que consume este campo campo en el registro. El total de todos los tamaños de campo es igual al tamaño del registro ya que pueden ser recuperados con la función px-get-info().

add a note add a note

User Contributed Notes 1 note

up
0
Mr Muddy
17 years ago
It's not especially pretty and there isn't any error trapping, so please don't use this on any sort of production data.  This will display the schema of a paradox data source.... 

<?
   
/*
    Paradox database schema display
    Tim Burt
    27/07/07
    */

    //we're expecting a filename in the post vars
   
if ($_POST['database_name'] != "") {
       
       
//Set up anything we are likely to need
       
$database_filename = "<path to your data file>".$_POST['database_name'];
       
        echo
"<p><b>Schema for ".$_POST['database_name']."</b></p>\n";
       
        if(!
$pxdoc = px_new()) {
      DIE(
"Problem !");
        }
       
$fp = fopen($database_filename, "r");
        if(!
px_open_fp($pxdoc, $fp)) {
         DIE(
"Couldn't open database file");
        }
        else {       
           
//output the database schema...
           
$stock_schema = px_get_schema($pxdoc);
           
            if (
is_array($stock_schema)) {
                foreach (
$stock_schema as $key=>$value) {
                    echo
"<br><b>".$key."</b> - Type ".$value['type'];
                    }
                }
            }
       
px_close($pxdoc);
       
px_delete($pxdoc);
       
fclose($fp);       
       
    }
    else {
       
//show the form to get the filename
       
echo "<form action=\"show_schema.php\" method=\"post\">\n";
        echo
"<p>Data Source Name (include extension) : <input type=\"text\" size=\"10\" name=\"database_name\"></p>\n";
        echo
"<p><input type=\"submit\" value=\"Show Schema !\">\n";
        echo
"</form>\n";
    }   

?>
To Top