The OpenNET Project
 
Поиск (ключи):    ПРОГРАММЫ СТАТЬИ СОВЕТЫ ФОРУМ
  WIKI НОВОСТИ (+) MAN'ы ДОКУМЕНТАЦИЯ

Как организовать выборку ключа по условию больше или равно в BerkeleyDB
Задача: выбрать запись с ключем большим или равным искомому, т.е. организовать
выборку по промежутку значений:

#!/usr/bin/perl
use strict;
use BerkeleyDB;
use constant DB_DEF_CACHE_SIZE => 5000000;
my %hash;

my $dbobj = tie(%hash, 'BerkeleyDB::Btree',
        -Filename    => "test.db",
        -Cachesize   => DB_DEF_CACHE_SIZE,
        -Flags       => DB_CREATE,
        -Compare     => sub { $_[0] <=> $_[1] }
        ) or die "Can't create or open DB File!\n";

# Тестовые значения
$hash{5}="0-5";
$hash{8}="6-8";
$hash{20}="9-20";
$hash{80}="21-80";

my ($key, $val);
my $cursor = $dbobj->db_cursor();

# Выборка.
$key=3;
$cursor->c_get($key, $val, DB_SET_RANGE);
print "3=$val\n";

$key=25;
$cursor->c_get($key, $val, DB_SET_RANGE);
print "25=$val\n";

$key=80;
$cursor->c_get($key, $val, DB_SET_RANGE);
print "80=$val\n";

untie %hash;
 
24.09.2004
Раздел:    Корень / Программисту и web-разработчику / SQL и базы данных / PostgreSQL специфика / Оптимизация и администрирование PostgreSQL

Ваш комментарий
Имя:         
E-Mail:      
Заголовок:
Текст:

 Добавить заметку
 Версия для печати
 
 Поиск заметки:
 

Последние заметки
- 12.05 Организация шифрованного бэкапа с помощью rdiff-backup, encfs и Dropbox
- 11.05 Настройка беспроводного соединения в Debian GNU/Linux
- 07.05 Использование Google Drive в Linux
- 18.04 Использование нескольких сетевых стеков в Linux
- 15.04 Восстановление стандартного KDE меню после его удаления (например, wine)
- 11.04 Настройка gmirror при использовании GPT во FreeBSD 9
- 09.04 Маршрутизатор на базе FreeBSD с приоритизация трафика средствами PF и ALTQ
- 02.04 Частичное восстановление данных MySQL из бэкапа, созданного с использованием LVM
- 21.03 Настройка DNSSEC в BIND 9.9
- 17.03 Набор номера на Cisco IP Phone 7960/7940 из скрипта
RSS | Следующие 15 записей >>


ПОДПИШИСЬ НА ЖУРНАЛ Linux Format 2012!

Журнал "Linux Format" (Линукс Формат)- Единственный в России и странах СНГ журнал на русском языке, посвящённый Linux и свободному ПО. Журнал для IT-директоров, IT-менеджеров, программистов, системных администраторов, учителей школ и преподавателей ВУЗов и всех пользователей ПК. В каждом выпуске: Новости индустрии OpenSource, обзоры новинок свободного ПО, обучающие и методические статьи.

Каждый, кто оформит подписку, получает бонусы и подарки- объёмные наклейки на системный блок, диск с архивом номеров за 2005-2011 г.г. и ежемесячно электронную версию журнала в pdf-формате.

Оформить подписку на год


  Закладки на сайте
  Проследить за страницей
Created 1996-2012 by Maxim Chirkov  
ДобавитьРекламаВебмастеруГИД  
RUNNet TopList