Download Shareware and Freeware Software for Windows, Linux, Macintosh, PDA

line Home  |  About Us  |  Link To Us  |  FAQ  |  Contact

Serving Software Downloads in 956 Categories, Downloaded 50.391.659 Times

ObjectDBI 0.12

Company: Kees Jan Hermans
Date Added: November 24, 2013  |  Visits: 369

ObjectDBI

Report Broken Link
Printer Friendly Version


Product Homepage
Download (38 downloads)



ObjectDBI is a Perl Object Persistence in an RDBMS using DBI.<br /><br />SYNOPSIS<br /><br />Serializes, queries, unserializes and deletes perl objects in an SQL driven, DBI accessible RDBMS.<br /><br />MODULE<br /><br />Created to use RDBMS-es as perl object storage, even when very primitive RDBMS-es are involved. The advantage is portability of your project (you don't have to transport a dbm or flat files with your project that is also RDBMS-based), a certain degree of discoverability (you can use plain SQL yourself to see what's inside the database), and searchability (metadata and data don't get equated). You must create a table for this storage, and (an idea for) the SQL for that is given below:<br /><br />SQL<br /><br />PostgreSQL or Oracle:<br /><br /> create sequence perlobjectseq;<br /><br /> create table "perlobjects" (<br /> obj_id integer unique not null,<br /> obj_pid integer references perlobjects (obj_id),<br /> obj_gpid integer references perlobjects (obj_id),<br /> obj_name varchar(255),<br /> obj_type varchar(64),<br /> obj_value varchar(255)<br /> );<br /><br />MySQL:<br /><br /> create table perlobjects (<br /> obj_id integer unique not null auto_increment,<br /> obj_pid integer references perlobjects (obj_id),<br /> obj_gpid integer references perlobjects (obj_id),<br /> obj_name varchar(255),<br /> obj_type varchar(64),<br /> obj_value varchar(255)<br /> );<br /><br />Indexes:<br /><br /> create index ob_name_i on perlobjects (obj_name);<br /> create index ob_type_i on perlobjects (obj_type);<br /> create index ob_value_i on perlobjects (obj_value);<br /><br />Now before y'all start shouting; obviously, given your particular type of RDBMS, your mileage may vary with respect to this SQL code, and you may not have primary or foreign keys. You may not have indexes or sequences, and you may even have an easier way to store infinite strings. This is all up to you, your cleverness and your needs.<br /><br />If you plan to store perlhashes with keys of more than 255 character length (which is an unwise thing in itself), for example, then you might consider making 'obj_name' a bit longer. If you plan to store values with characters outside of the 32-126 range and you're using Postgres, then you might want to change the data type of 'obj_value' from 'varchar' to 'bytea'. This module isn't here to lecture you - just to make things easy.<br /><br />If you're using MySQL, you'll have problems without a sequence, so you'll have to make the 'obj_id' field auto-incrementing. For those users, a special piece of code is added to withdraw the id of an object after the fact of its insertion.<br /><br />If you're using a RDBMS that doesn't do sequences OR auto-incrementing, then IDs are generated out of thin air. Be prepared to work with large numbers though. If your RDBMS can't handle those - well, then I'm at my wit's end: please provide a 'sequencefnc' to the constructor.<br />

Requirements: No special requirements
Platforms: *nix, Linux
Keyword: Create Index Integer Obj Obj Type Perlobjects Rdbms References Sequences Store Table
Users rating: 0/10

License: Freeware Size: 10.24 KB
USER REVIEWS
More Reviews or Write Review


OBJECTDBI RELATED
Network & Internet  -  Products.BooleanIndex 1.0.2
This is a specialized ZCatalog index type which does not actually store False values in its forward index and thus reduces the persistent footprint of the index.
20.48 KB  
Multimedia & Graphics  -  CDClick i-Studio 2.2.1.100
CD-Click i-Studio is a very powerful, yet friendly program that allows you to create and copy online any type of CD/DVD/Blu-Ray discs. With i-Studio, you can copy (read master and burn blank disc) or create the disc content of the most popular...
667.35 KB  
Database Tools  -  MySQL File System 1.0
MySQL File System can be used to create a virtual filesystem using BLOB fields of a MySQL database table to store the file contents.MySQL File System is particularly useful when disk space is scarce on a server that cannot go down in a production...
10 KB  
Finance  -  Accent Composer 2.06
Accent Composer lets you create accented letters with easy-to-remember two character sequences. Use it instead of typing codes on the numeric keypad or pasting from the Character Map utility. Accent Composer is not limited to accented characters....
 
Programming  -  Bonobo Framework code generator 1.0
PHP code generator that can quickly and easilly create code for database operations (create-read-update-delete), with flexible code-generation options, based on table data gathered from a DB.
33.54 KB  
Programming  -  MIEX 0.1
The aim of MIEX (Metadata and Information Extractor from small XML documents) is to create a wrapper for the Stanford Parser, to extract and store metadata (syntactic structures, relationships among words...) from simple XML documents.
1.96 MB  
Utilities  -  Personal WishList 1.1
A free, easy-to-use personal wishlist or gift registry service where you can create your own custom wishlist and add wishes from any store in a single place. WishCentral makes it easy for family and friends to share wishes, saving guesswork by...
40.96 KB  
Modules  -  Table BBCode 1.3.1
This hack enables users to easily create tables in their posts without requiring you to allow the table, tr and td HTML tags
 
Database Tools  -  Base For PostgreSQL 1.0
Base For PostgreSQL is a base class that can be used to wrap the access to records of tables in PostgreSQL databases.The script can query the information about the fields of a given table to be able to store and retrieve the values of the fields...
10 KB  
Modules  -  CCK Table Field 7.x-1.0
This module adds a CCK table field type that lets you add a table display to any content type without having to manually enter HTML. It currently parses text data to form the header and row content, but the goal is to accomplish the data entry...
10 KB  
NEW DOWNLOADS IN LINUX SOFTWARE, PROGRAMMING
Linux Software  -  EasyEDA PCB Designer for Linux 2.0.0
EasyEDA, a great web based EDA(Electronics Design Automation) tool, online PCB tool, online PCB software for electronics engineers, educators, students, makers and enthusiasts. Theres no need to install any software. Just open EasyEDA in any...
34.4 MB  
Linux Software  -  wpCache® WordPress HTTP Cache 1.9
wpCache® is a high-performance, distributed object, caching system application, generic in nature, but intended for use in speeding up dynamic web applications, by decreasing database load time. wpCache® decreases dramatically the page...
3.51 MB  
Linux Software  -  Polling Autodialer Software 3.4
ICTBroadcast Auto Dialer software has a survey campaign for telephone surveys and polls. This auto dialer software automatically dials a list of numbers and asks them a set of questions that they can respond to, by using their telephone keypad....
488 B  
Linux Software  -  Total Video Converter Mac Free 3.5.5
Total Video Converter Mac Free developed by EffectMatrix Ltd is the official legal version of Total Video Converter which was a globally recognized brand since 2006. Total Video Converter Mac Free is a free but powerful all-in-one video...
17.7 MB  
Linux Software  -  Skeith mod_log_sql Analyzer 2.10beta2
Skeith is a php based front end for analyzing logs for Apache using mod_log_sql.
47.5 KB  
Programming  -  Cedalion for Linux 0.2.6
Cedalion is a programming language that allows its users to add new abstractions and define (and use) internal DSLs. Its innovation is in the fact that it uses projectional editing to allow the new abstractions to have no syntactic limitations.
471.04 KB  
Programming  -  Math::GMPf 0.29
Math::GMPf - perl interface to the GMP library's floating point (mpf) functions.
30.72 KB  
Programming  -  Net::Wire10 1.08
Net::Wire10 is a Pure Perl connector that talks to Sphinx, MySQL and Drizzle servers. Net::Wire10 implements the low-level network protocol, alias the MySQL wire protocol version 10, necessary for talking to one of the aforementioned...
30.72 KB  
Programming  -  logilab-common 0.56.2
a bunch of modules providing low level functionnalities shared among some python projects devel Please note that some of the modules have some extra dependencies. For instance, logilab.common.db will require a db-api 2.0 compliant...
174.08 KB  
Programming  -  OpenSSL for linux 1.0.0a
The OpenSSL Project is a collaborative effort to develop a robust, commercial-grade, full-featured, and Open Source toolkit implementing the Secure Sockets Layer (SSL v2/v3) and Transport Layer Security (TLS v1) protocols as well as a...
3.83 MB