1 #!/usr/athena/bin/perl -Tw
4 # Generate a database extract from the users table for the MIT Data Warehouse.
5 $MR_DBMS_ERR = 47836421;
6 $MR_OCONFIG = 47836460;
8 $outfile = '/moira/dcm/warehouse.out';
12 $dbh = DBI->connect("dbi:Oracle:moira", "moira", "moira") || exit $MR_DBMS_ERR;
14 $sth = $dbh->prepare("SELECT login, clearid, first, last, middle " .
15 "FROM users WHERE (status = 1 OR status = 2 OR " .
16 "status = 5 OR status = 6 OR status = 7 OR status = 9)");
18 $sth->execute || exit $MR_DBMS_ERR;
21 open(OUT, ">$outfile") || exit $MR_OCONFIG;
23 while (($login, $clearid, $first, $last, $middle) = $sth->fetchrow_array) {
24 next if (length($clearid) < 2);
25 next if ($clearid eq "0" || $clearid eq "\0" || $clearid =~ /^.\D/);
26 $row = "$login\t$clearid\t$first\t$last\t$middle\n";