From e905db13057c84403d33b7007b4a13e9ffbf2ed0 Mon Sep 17 00:00:00 2001 From: thomascube Date: Tue, 14 Oct 2008 12:49:44 +0000 Subject: Set postgres-specific schema options + fix indentation --- bin/dumpschema.php | 22 ++++++++++++++++------ 1 file changed, 16 insertions(+), 6 deletions(-) (limited to 'bin/dumpschema.php') diff --git a/bin/dumpschema.php b/bin/dumpschema.php index da82f7392..cbadb00f6 100644 --- a/bin/dumpschema.php +++ b/bin/dumpschema.php @@ -1,5 +1,6 @@ true, 'force_defaults' => false, 'portability' => false, - 'disable_smart_seqname' => true, - 'seqname_format' => '%s' ); -$schema =& MDB2_Schema::factory($config->get('db_dsnw'), $options); +$dsnw = $config->get('db_dsnw'); +$dsn_array = MDB2::parseDSN($dsnw); + +// set options for postgres databases +if ($dsn_array['phptype'] == 'pgsql') { + $options['disable_smart_seqname'] = true; + $options['seqname_format'] = '%s'; +} + +$schema =& MDB2_Schema::factory($dsnw, $options); $schema->db->supported['transactions'] = false; - + // send as text/xml when opened in browser if ($_SERVER['REMOTE_ADDR']) header('Content-Type: text/xml'); @@ -68,6 +76,8 @@ else { ); $definition = $schema->getDefinitionFromDatabase(); + $definition['charset'] = 'utf8'; + if (PEAR::isError($definition)) { $error = $definition->getMessage() . ' ' . $definition->getUserInfo(); } @@ -81,7 +91,7 @@ else { $schema->disconnect(); -//if ($error) -// fputs(STDERR, $error); +if ($error && !$_SERVER['REMOTE_ADDR']) + fputs(STDERR, $error); ?> -- cgit v1.2.3