|
|
ru.perl- RU.PERL ---------------------------------------------------------------------- From : Stanislav Nekrasov 2:5020/400 30 Apr 2001 19:05:10 To : All Subject : databases in ActivePerl --------------------------------------------------------------------------------
Hello, многоуважаемый All!
Я тут начал разбираться с базами данных и их реализацией в перле. Первое, с
чем столкнулся -- базы, реализуемые путем связи хеша и базы как таковой -- с
помощью функции dbmopen и dbmclose.
Так вот, возникает вопрос: если создавать небольшую базу, записей на
100-200, все нормально, создается файл, где содержатся записи. Hо если
создать базу большего размера, этак на 10000 записей, то в полученном файле
(предыдущие файлы удалялись нещадно), если посмотреть содержимое, не только
нужные записи, но и куча непонятностей, в том числе туда попадают отрывки из
других файлов, расположенных на диске, например, у меня попадали от
system.ini до кусков документации самого перла, а также записи, содержащиеся
раньше в данном файле (но я же его потер!). Hе подскажет ли уважаемый All,
почему так и как с этим бороться (файл то большой получается -- на 10000
записей -- полмегабайта). Скрипт, которым создается база, привожу:
use strict;
dbmopen (my %a,'testbase',0666) || die "CAN'T associate hash: $!";
foreach (1..10000)
{
$a{$_}=$_; #да, просто вот числами забиваю.
}
dbmclose(%a) || die "CAN'T close base: $!";
И второй вопрос: постоянно в документации перла и в данной эхе встречается
упоминания о DB_File. Hо на него самого документации нет. Так вот, ее нет
только в ActivePerl'е или это надо брать откуда-то дополнительно?
best WISHes, Stas.
P.S. у меня ActivePerl 5.6.0 build 623, Win98.
--- ifmail v.2.15dev5
* Origin: Demos online service (2:5020/400)
Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.perl/5494679118df.html, оценка из 5, голосов 10
|