version 1.1, 2001/10/31 03:00:10
|
version 1.5, 2001/11/25 09:41:51
|
Line 1
|
Line 1
|
|
#!/usr/local/bin/perl -w |
#!/usr/local/bin/perl -w
|
|
|
=head1 NAME |
=head1 NAME
|
|
|
loaddump.pl - скрипт для заливки |
loaddump.pl - скрипт для заливки
|
|
|
=head1 SYNOPSIS |
=head1 SYNOPSIS
|
|
|
loaddump.pl dump |
loaddump.pl dump
|
|
|
|
|
=head1 DESCRIPTION |
=head1 DESCRIPTION
|
|
|
Удаляет таблицу word2question и заливает её из файла dump, |
Удаляет таблицу word2question и заливает её из файла dump,
|
созданного скриптом dumpRS.pl (возможно, обработанного скриптом |
созданного скриптом dumpRS.pl (возможно, обработанного скриптом
|
dump2dump.pl). Поле ProcessedBySearch не устанавливает (считается, |
dump2dump.pl)
|
что если дамп изменился, то это поле установил или очистил |
|
меняющий скрипт). |
|
|
=head1 AUTHOR
|
|
|
=head1 AUTHOR |
Роман Семизаров
|
|
|
Роман Семизаров |
|
|
=cut
|
|
|
=cut |
|
|
use dbchgk;
|
use lib "../lib"; |
use chgkfiles;
|
use dbchgk; |
|
use chgkfiles; |
if (!$ARGV[0])
|
|
{
|
if (!$ARGV[0]) |
print "Usage: loaddump.pl dump\n";
|
{ |
exit;
|
print "Usage: loaddump.pl dump\n"; |
}
|
exit; |
|
} |
|
|
open STDERR, ">errors";
|
|
open (DUMP1, $ARGV[0]) or die "0: Can not open ". $ARGV[0];
|
open STDERR, ">errors"; |
binmode(DUMP1);
|
open (DUMP1, $ARGV[0]) or die "0: Can not open ". $ARGV[0]; |
|
binmode(DUMP1); |
checktable('word2question','delete');
|
|
|
checktable('word2question','deletedata'); |
print "getting and writing dump\n";
|
|
|
print "getting and writing dump\n"; |
while (read(DUMP1, $w,4))
|
|
{
|
while (read(DUMP1, $w,4)) |
print " $sch...\n" unless (++$sch%100);
|
{ |
read(DUMP1,$l,4);
|
print " $sch...\n" unless (++$sch%100); |
read(DUMP1,$q,unpack("L",$l));
|
read(DUMP1,$l,4); |
#print "w=$w; q=$q\n";
|
read(DUMP1,$q,unpack("L",$l)); |
updateword2question(unpack("L",$w),$q);
|
#print "w=$w; q=$q\n"; |
}
|
updateword2question(unpack("L",$w),$q); |
|
} |
close (DUMP1);
|
|
|
close (DUMP1); |