Perl Diver 2.31
Main Environment Variables Perl Default Values Perl Config - Summary Perl Config - Full Installed Modules List Directory uptime Docs

Module Documentation
Details and documentation about a specific module, including version and documentation (if available). Note that while links to perldoc.com and search.cpan.org are provided, the module may be part of a larger distribution. If you reach a File Not Found page on either site, please try the parent module.

DBD::SQLite::VirtualTable::FileContent

Name DBD::SQLite::VirtualTable::FileContent
Version
Located at /usr/lib64/perl5/vendor_perl
File /usr/lib64/perl5/vendor_perl/DBD/SQLite/VirtualTable/FileContent.pm
Is Core No
Search CPAN for this module DBD::SQLite::VirtualTable::FileContent
Documentation DBD::SQLite::VirtualTable::FileContent
Module Details DBD::SQLite::VirtualTable::FileContent

NAME

DBD::SQLite::VirtualTable::FileContent -- virtual table for viewing file contents


SYNOPSIS

Within Perl :

  $dbh->sqlite_create_module(fcontent => "DBD::SQLite::VirtualTable::FileContent");

Then, within SQL :

  CREATE VIRTUAL TABLE tbl USING fcontent(
     source      = src_table,
     content_col = content,
     path_col    = path,
     expose      = "path, col1, col2, col3", -- or "*"
     root        = "/foo/bar"
     get_content = Foo::Bar::read_from_file
    );
  SELECT col1, path, content FROM tbl WHERE ...;


DESCRIPTION

A ``FileContent'' virtual table is bound to some underlying source table, which has a column containing paths to files. The virtual table behaves like a database view on the source table, with an added column which exposes the content from those files.

This is especially useful as an ``external content'' to some fulltext table (see the DBD::SQLite::Fulltext_search manpage) : the index table stores some metadata about files, and then the fulltext engine can index both the metadata and the file contents.


PARAMETERS

Parameters for creating a FileContent virtual table are specified within the CREATE VIRTUAL TABLE statement, just like regular column declarations, but with an '=' sign. Authorized parameters are :

source
The name of the source table. This parameter is mandatory. All other parameters are optional.

content_col
The name of the virtual column exposing file contents. The default is content.

path_col
The name of the column in source that contains paths to files. The default is path.

expose
A comma-separated list (within double quotes) of source column names to be exposed by the virtual table. The default is "*", which means all source columns.

root
An optional root directory that will be prepended to the path column when opening files.

get_content
Fully qualified name of a Perl function for reading file contents. The default implementation just slurps the entire file into a string; but this hook can point to more sophisticated implementations, like for example a function that would remove html tags. The hooked function is called like this :
  $file_content = $get_content->($path, $root);


AUTHOR

Laurent Dami <dami@cpan.org>


COPYRIGHT AND LICENSE

Copyright Laurent Dami, 2014.

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

Perl Diver brought to you by ScriptSolutions.com © 1997- 2024