$ sqlite3 bod
SQLite version 3.34.0 2020-12-01 16:14:00
Enter ".help" for usage hints.
sqlite> create table Person (idPerson, email, altEmail);
sqlite> insert into Person values (1, 'you@example.com', '');
sqlite> insert into Person values (2, '', 'me@example.com');
sqlite> insert into Person values (3, 'me@example.com', '');
sqlite> select * from Person;
1|you@example.com|
2||me@example.com
3|me@example.com|
sqlite>
####
#!/usr/bin/env perl
use strict;
use warnings;
use DBI;
my $dbh = DBI->connect("dbi:SQLite:dbname=bod");
print "Contents of Person:\n";
eval {
print join('|', @$_), "\n" for $dbh->selectall_array('select * from Person');
1;
} or do { print $dbh->errstr, "\n"; };
print "Head-scratching code:\n";
eval {
my %data = (email => 'me@example.com');
my $crid = $dbh->selectrow_array("SELECT idPerson FROM Person WHERE email = ? OR altEmail = ?", undef, $data{'email'
}, $data{'email'});
print "$crid\n";
1;
} or do { print $dbh->errstr, "\n"; };
##
##
Contents of Person:
1|you@example.com|
2||me@example.com
3|me@example.com|
Head-scratching code:
2