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

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

Serving Software Downloads in 976 Categories, Downloaded 30.144.840 Times

SQL::Statement::Embed 1.15

  Date Added: August 12, 2010  |  Visits: 614

SQL::Statement::Embed

Report Broken Link
Printer Friendly Version


Product Homepage
Download (71 downloads)

SQL::Statement::Embed can embed a SQL engine in a DBD or module. SQL::Statement is designed to be easy to embed in other modules and to be especially easy to embed in DBI drivers. It provides a SQL Engine and the other module needs to then provide a data source and a storage mechanism. For example, the DBD::CSV module uses SQL::Statement as an embedded SQL engine by implementing a file-based data source and by using DBI as the user interface. Similarly DBD::Amazon uses SQL::Statement as its SQL engine, provides its own extensions to the supported SQL syntax, and uses on-the-fly searches of Amazon.com as its data source. SQL::Statement is the basis for eight existing DBDs (DBI database drivers). If you have a new data source, you too can create a DBD without having to reinvent the SQL wheel. Its fun, its easy, become a DBD author today! SQL::Statement can be also be embedded without DBI. Well explore that first since developing a DBD uses most of the same methods and techniques. The role of SQL::Statement subclasses SQL::Statement provides a SQL parsing and execution engine. It does not provide a data source or storage mechanism other than in-memory tables. The DBD::File module is a subclass of SQL::Statement that provides access to file-based storage mechanisms. Its quite possible to use things other than files as data souces, in which case we wouldnt use DBD::File, instead wed replace DBD::Files methods with our own. In the examples below, well use DBD::File, replacing only a few methods. SQL::Statement provides SQL parsing and evaluation and DBD::File provides file-based storage. The only thing missing is a data source - what we actually want to store and query. As an example suppose we are going to create a subclass called Foo that will provide as a data source a simple file similar to a passwd file - one record per line, fields separated by colons, with only three fields "username, uid, gid". Consider what needs to happen to perform a SELECT query on our Foo data: * recieve a SQL string * parse the SQL string into a request structure * open the table(s) specified in the request * define column names and postions for the table * read rows from the table * convert the rows from colon-separated format into perl arrays * match the columns and rows against the requested selection criteria * return requested rows and columns to the user To perform operations like INSERT and DELETE, we also need to: * convert rows from perl arrays into colon-separated format * write rows * delete rows SQL::Statement takes care of all of the SQL parsing and evaluation. DBD::File takes care of file opening, reading, writing, and deleting. So the only things Foo is really responsible for are: * define column names and postions for the table * convert rows from colon-separated format into perl arrays * convert rows from perl arrays into colon-separated format In SQL::Statement subclasses these responsibilities are assigned to two objects, a ::Statement object is responsible for opening the table, defining the column names and positions, and for creating new ::Table objects. A ::Table object is responsible for reading, converting, writing, and deleting data..

Requirements: No special requirements
Platforms: Linux
Keyword: Data Data Source Dbd Dbi Embed Engine Libraries Programming Provides Rows Source Sql Engine Sqlstatementembed
Users rating: 0/10

License: Freeware Size: 87.04 KB
SQL::STATEMENT::EMBED RELATED
Libraries  -  DBD::RAM 0.072
DBD::RAM is a DBI driver for files and data structures. SYNOPSIS use DBI; my $dbh = DBI->connect(DBI:RAM:,usr,pwd,{RaiseError=>1}); $dbh->func({ table_name => my_phrases, col_names => id,phrase, data_type => PIPE, data_source => [ ],...
29.7 KB  
Database Tools  -  K Database Magic 2.8.3.1
Database Desktop, SQL manager, merge data, data comparison and many more function in one software. It accomodate a simple admittance to datasets like other database handling products. Firstly it doesn't concentrate maintenance of datasets, but...
6.29 MB  
Libraries  -  Text::vFile::toXML 0.03
Text::vFile::toXML can convert vFiles into equivalent XML. SYNOPSIS This module converts iCalendar (iCal : generically, vFile) files into their (equivalent) XML (xCalendar / xCal) representation, according to Royers IETF Draft...
5.12 KB  
Libraries  -  Class::DBI::Query 3.0.15
Class::DBI::Query is a Perl module with deprecated SQL manager for Class::DBI. SYNOPSIS my $sth = Class::DBI::Query ->new({ owner => $class, sqlname => $type, essential => @columns, where_columns => @where_cols, }) ->run($val); This...
102.4 KB  
Database Tools  -  SQL Engine 1.0
SQL Engine can execute SELECT, INSERT, UPDATE and DELETE queries. It takes care of emulating auto-increment fields if these are not supported, using sequences.SQL Engine can also create a new database table or alter its fields if the table already...
20.48 KB  
Libraries  -  Persistent::DBI 0.50
Persistent::DBI is an Abstract Persistent Class implemented using a DBI Data Source. SYNOPSIS ### we are a subclass of ... ### use Persistent::DBI; @ISA = qw(Persistent::DBI); ABSTRACT This is an abstract class used by the Persistent...
10.24 KB  
Libraries  -  DBD::AnyData 0.08
DBD::AnyData is a DBI access to XML, CSV and other formats. SYNOPSIS use DBI; my $dbh = DBI->connect(dbi:AnyData(RaiseError=>1):); $dbh->func( trains, CSV, /users/joe/cars.csv, ad_catalog); $dbh->func( bikes, XML, [$xml_str], ad_import);...
20.48 KB  
Libraries  -  DBD::mysql 4.004
DBD::mysql is a Perl module with MySQL driver for the Perl5 Database Interface (DBI). SYNOPSIS use DBI; $dsn = "DBI:mysql:database=$database;host=$hostname;port=$port"; $dbh = DBI->connect($dsn, $user, $password); $drh =...
112.64 KB  
Libraries  -  DBD::mSQL 1.2219
DBD::mSQL / DBD::mysql is a Perl module with mSQL and mysql drivers for the Perl5 Database Interface (DBI). SYNOPSIS use DBI; $driver = "mSQL"; # or "mSQL1"; $dsn = "DBI:$driver:database=$database;host=$hostname"; $dbh =...
194.56 KB  
Libraries  -  Data::Region 1.0
Data::Region Perl module can define hierarchical areas with behaviors. SYNOPSIS use Data::Region; $r = Data::Region->new( 8.5, 11, { data => PageObj->new() } ); $r->data( PageObj->new() ); foreach my $c ( $r->subdivide(2.5,3) ) { $a =...
8.19 KB  
NEW DOWNLOADS IN PROGRAMMING, LIBRARIES
Programming  -  FLEX-db Digital Asset Manager 3.0.9
FLEX-db - an enterprise Digital Asset Manager (DAM). It ingests and links metadata with files, creates thumbnails, and processes files using business rules. FLEX-db has a JSP client, Java app server for file input and output and an EJB metadata...
21.57 MB  
Programming  -  Libicom 0.9.0
The libicom library is a character based dynamicly linked library for Linux. It is used to remotely control the Icom IC-R8500 wide band receiver via an RS232 link. All call and return parameters to the control functions are character string based....
20.48 KB  
Programming  -  dotdesktop 0.3
Dotdesktop library provides ability to parse desktop entry file and access the information in a convenient way. Desktop entry file format is defined by freedesktop.org, it is used to describe information about an application such as the name and...
327.68 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  -  libyasl 0.2
Libyasl is a C++ class library to easily realize TCP/UDP/Multicast clientsand servers in IPv4 and IPv6 environments under GNU/Linux systems.
143.36 KB  
Libraries  -  wolfSSL 3.12.0
The wolfSSL embedded SSL/TLS library is a lightweight SSL library written in ANSI standard C and targeted for embedded and RTOS environments - primarily because of its small size, speed, and feature set. It is commonly used in standard operating...
2.73 MB  
Libraries  -  EuGTK 4.8.9
Makes it easy to develop good- looking, fast, cross-platform programs that run on Linux, OS X, and Windows. Euphoria is a very fast interpreted/compiled language with straight-forward syntax. EuGTK allows programming in a clean, object-oriented...
10.68 MB  
Libraries  -  Linux User Group Library Manager 1.0
The LUG Library Manager is a project to help Linux User Groups start their own library. A LUG library is helpful to the community at large because it increases access to information, and gives everyone the opportunity to become more knowledgeable.
5.35 KB  
Libraries  -  Module::MakefilePL::Parse 0.12
Module::MakefilePL::Parse is a Perl module to parse required modules from Makefile.PL. SYNOPSIS use Module::MakefilePL::Parse; open $fh, Makefile.PL; $parser = Module::MakefilePL::Parse->new( join("", ) ); $info = $parser->required;...
8.19 KB  
Libraries  -  sqlpp 0.06
sqlpp Perl package is a SQL preprocessor. sqlpp is a conventional cpp-alike preprocessor taught to understand SQL ( PgSQL, in particular) syntax specificities. In addition to the standard #define/#ifdef/#else/#endif cohort, provides also...
10.24 KB