Skip to content

ruby/gdbm

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

GDBM

GNU dbm is a library for simple databases. A database is a file that stores key-value pairs. Gdbm allows the user to store, retrieve, and delete data by key. It furthermore allows a non-sorted traversal of all key-value pairs. A gdbm database thus provides the same functionality as a hash. As with objects of the Hash class, elements can be accessed with []. Furthermore, GDBM mixes in the Enumerable module, thus providing convenient methods such as #find, #collect, #map, etc.

A process is allowed to open several different databases at the same time. A process can open a database as a "reader" or a "writer". Whereas a reader has only read-access to the database, a writer has read- and write-access. A database can be accessed either by any number of readers or by exactly one writer at the same time.

Installing the required libraries.

On Debian/Ubuntu

sudo apt install libgdbm-dev

On Redhat/Fedora

sudo dnf install gdbm-devel

or if you are using an older version of Redhat or Fedora that uses Yum:

sudo yum install gdbm-devel

On macOS

If you are using Homebrew, you can install gdbm with the following command:

brew install gdbm

or if you are using MacPorts, you can install gdbm with:

sudo port install gdbm

Installation

Add this line to your application's Gemfile:

gem 'gdbm'

And then execute:

$ bundle

Or install it yourself as:

$ gem install gdbm

Install on macOS with gdbm path.

gem install gdbm -- --with-gdbm-dir=$(brew --prefix gdbm)

Usage

  1. Opening/creating a database, and filling it with some entries: require 'gdbm'
gdbm = GDBM.new("fruitstore.db")
gdbm["ananas"]    = "3"
gdbm["banana"]    = "8"
gdbm["cranberry"] = "4909"
gdbm.close
  1. Reading out a database:
require 'gdbm'

gdbm = GDBM.new("fruitstore.db")
gdbm.each_pair do |key, value|
  print "#{key}: #{value}\n"
end
gdbm.close

Contributing

Bug reports and pull requests are welcome on GitHub at https://github.com/ruby/gdbm.

License

The gem is available as open source under the terms of the 2-Clause BSD License.

About

Ruby extension for GNU dbm.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 17

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy