summaryrefslogtreecommitdiff
path: root/DBI_sqlite_alternative.pm
diff options
context:
space:
mode:
authoryo mama <pepper@scannerjammer.com>2014-09-25 19:04:34 -0700
committeryo mama <pepper@scannerjammer.com>2014-09-25 19:04:34 -0700
commit34c4505ca54349cf7269ab9ab2983a49fa65cc31 (patch)
treeb4e8261f473ba2902c1921faa1078ee50a084384 /DBI_sqlite_alternative.pm
parente61580d80721da69eb91dc8c1a8f450402b7c1e5 (diff)
added2
Diffstat (limited to 'DBI_sqlite_alternative.pm')
-rwxr-xr-xDBI_sqlite_alternative.pm59
1 files changed, 59 insertions, 0 deletions
diff --git a/DBI_sqlite_alternative.pm b/DBI_sqlite_alternative.pm
new file mode 100755
index 0000000..83c9d41
--- /dev/null
+++ b/DBI_sqlite_alternative.pm
@@ -0,0 +1,59 @@
+package journal_database;
+use DBD::SQLite;
+use DBI;
+use Data::Dumper;
+my $dbh = DBI->connect("dbi:SQLite:dbname=journals.db","","");
+
+
+CREATE TABLE journals(
+ id INTEGER PRIMARY KEY NOT NULL, --optional
+ date INTEGER NOT NULL,
+ fulltext TEXT,
+ image_url TEXT
+);
+
+sub remove_from_db{
+ my $id_to_remove = shift;
+ my $sth = $dbh->prepare(
+ "DELETE FROM journals ".
+ "WHERE id=$id_to_remove;"
+ );
+ $sth->execute();
+}
+sub get_entry_by_date {
+ my $date_int = shift;
+ my $sth = $dbh->prepare(
+ "SELECT *".
+ "FROM journals ".
+ "WHERE `date`=? "
+ );
+ $sth->execute($date_int);
+ return $sth->fetchrow_hashref();
+}
+
+sub add_journal_entry{
+ my $entry = shift;
+ my $sqlCmd = "insert into journals values (?,?,?,?);" ;
+# ."on duplicate key update ".
+# "id = ?,".
+# "date = ?,".
+# "fulltext = ?,".
+# "image_url = ?,".
+# ";";
+ my $sth = $dbh->do($sqlCmd,
+ undef,
+ $entry->{id},
+ $entry->{date} || time(),
+ $entry->{fulltext},
+ $entry->{image_url}
+ );
+ }
+
+ my $entry = {};
+ $entry->{id} = '12';
+ $entry->{date} = '123432';
+ $entry->{fulltext} = 'this is a test of the fulltext';
+ $entry->{image_url} = 'this is a test of the image url';
+ add_journal_entry($entry);
+ print Dumper get_entry_by_date(123432);
+ remove_from_db(12);