/[SQL2XLS]/sql2xls.cgi
This is repository of my old source code which isn't updated any more. Go to git.rot13.org for current projects!
ViewVC logotype

Diff of /sql2xls.cgi

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 21 by dpavlin, Mon Nov 3 23:19:40 2008 UTC revision 23 by dpavlin, Thu Nov 6 10:49:02 2008 UTC
# Line 118  if ($ENV{GATEWAY_INTERFACE} && $ENV{GATE Line 118  if ($ENV{GATEWAY_INTERFACE} && $ENV{GATE
118    
119  my $date_format = $workbook->add_format(num_format => $xls_date_format);  my $date_format = $workbook->add_format(num_format => $xls_date_format);
120    
121  my $dbh = DBI->connect($dsn . $database,$user,$passwd, { RaiseError => 1, AutoCommit => 0 }) || die $DBI::errstr;  our $dbh;
122    sub use_database {
123            $dbh->disconnect if $dbh;
124            my $database = shift || return;
125            print STDERR "## connect to $database\n" if $debug;
126            $dbh = DBI->connect($dsn . $database,$user,$passwd, { RaiseError => 1, AutoCommit => 0 }) || die $DBI::errstr;
127            if ( $db_encoding ) {
128                    if ( $dsn =~ m{Pg} ) {
129                            $dbh->do( qq{ set client_encoding = '$db_encoding'; } );
130                    } elsif ( $dsn =~ m{mysql} ) {
131                            $dbh->do( qq{ set names '$db_encoding'; } );
132                    } else {
133                            warn "Don't know how to set encoding to $db_encoding for $dsn";
134                    }
135            }
136    }
137    
138    use_database( $database );
139    
140  sub _c {  sub _c {
141          return shift unless $db_encoding;          return shift unless $db_encoding;
# Line 144  foreach my $sql_file (@sql_files) { Line 161  foreach my $sql_file (@sql_files) {
161          while(<SQL>) {          while(<SQL>) {
162                  chomp;                  chomp;
163                  if (/^\\c\s+(\S+)/) {                  if (/^\\c\s+(\S+)/) {
164                          $dbh->disconnect if $dbh;                          use_database( $1 );
                         print STDERR "## connect to $1\n" if $debug;  
                         $dbh = DBI->connect($dsn . $1,$user,$passwd, { RaiseError => 1, AutoCommit => 0 }) || die $DBI::errstr;  
165                  } elsif (/^--(.+)/) {                  } elsif (/^--(.+)/) {
166                          $comment.=$1;                          $comment.=$1;
167                  } else {                  } else {

Legend:
Removed from v.21  
changed lines
  Added in v.23

  ViewVC Help
Powered by ViewVC 1.1.26