This program produces an error which looks wrong to me:
-------------------------------------------------------
#!/usr/bin/env perl
use strict;
use DBI;
my $dbh = DBI->connect('dbi:SQLite:test.db', '', '',
{ AutoCommit => 1,
PrintError => 0,
RaiseError => 1 });
eval { $dbh->do("drop table X"); };
$dbh->do("create table X(a TEXT, b TEXT, unique(a, b))");
my $sth = $dbh->prepare("insert into X(a, b) values('N', ?)");
$sth->execute('1.1');
$sth->execute('1.10');
-------------------------------------------------------
When run, I see:
$ ./test-sqlite.pl
DBD::SQLite::st execute failed: columns a, b are not unique(1) at
dbdimp.c line 401 at ./test-sqlite.pl line 17.
Is this correct behaviour?
- Will