• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 1720
  • Last Modified:

How to insert text file into postgresql?

I have simple table described below. How I should form INSERT statement if I want to put a content of a file into TEXT field?

INSERT INTO foo( `path`, `content` ) VALUES( '/etc/motd', SOME_FUNCTION_PERHAPS( '/etc/motd' ) );

I will perform full-text searching on column `content` followed by thousands of INSERTs.

CREATE TABLE foo (
	path VARCHAR(255) PRIMARY KEY,
	content TEXT NULL
);

Open in new window

0
pzurowski
Asked:
pzurowski
1 Solution
 
pzurowskiAuthor Commented:
I did it myself...
#!/usr/bin/perl
use DBI;
 
sub get_file_contents
{
        my $filename = @_;
        my $result;
        if( ( -e "$filename" ) > 0 )
        {
                open( TFILECNTS, "$filename" ) || die "$filename";
                read( TFILECNTS, $result, -s "$filename" );
                close( TFILECNTS );
        }
        return $result;
}
 
my $dbh = DBI->connect("DBI:Pg:");
$dbh->do("INSERT INTO rfc( path, data ) VALUES( ?, ? )", undef, ("motd", get_file_contents( "/etc/motd" ) ) );
$dbh->disconnect();

Open in new window

0

Featured Post

Industry Leaders: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Tackle projects and never again get stuck behind a technical roadblock.
Join Now