Revision 23740,
962 bytes
checked in by broder, 16 years ago
(diff) |
In moira:
* New CVS snapshot (Trac: #195)
* Drop patches that have been incorporated upstream.
* Update to build without krb4 on systems that no longer have it.
This doesn't build yet on squeeze, which lacks a krb4 library, but I'm
committing now before I start hacking away at a patch to fix that.
|
-
Property svn:executable set to
*
|
Line | |
---|
1 | #!/usr/athena/bin/perl -Tw |
---|
2 | # |
---|
3 | # $Id: warehouse.gen,v 1.1 2007-01-03 20:31:58 zacheiss Exp $ |
---|
4 | # Generate a database extract from the users table for the MIT Data Warehouse. |
---|
5 | $MR_DBMS_ERR = 47836421; |
---|
6 | $MR_OCONFIG = 47836460; |
---|
7 | |
---|
8 | $outfile = '/moira/dcm/warehouse.out'; |
---|
9 | |
---|
10 | use DBI; |
---|
11 | |
---|
12 | $dbh = DBI->connect("dbi:Oracle:moira", "moira", "moira") || exit $MR_DBMS_ERR; |
---|
13 | |
---|
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)"); |
---|
17 | |
---|
18 | $sth->execute || exit $MR_DBMS_ERR; |
---|
19 | |
---|
20 | umask 022; |
---|
21 | open(OUT, ">$outfile") || exit $MR_OCONFIG; |
---|
22 | |
---|
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"; |
---|
27 | $row =~ s/\0//g; |
---|
28 | print OUT $row; |
---|
29 | } |
---|
30 | |
---|
31 | close(OUT); |
---|
32 | $dbh->disconnect; |
---|
33 | |
---|
34 | exit 0; |
---|
Note: See
TracBrowser
for help on using the repository browser.