On Thu, Apr 14, 2011 at 13:39, Brian E. Lozier <[email protected]> wrote:
>    If strict mode is enabled, an error occurs for transactional
> tables and the statement is rolled back. For nontransactional tables,
> an error occurs, but if this happens for the second or subsequent row
> of a multiple-row statement, the preceding rows will have been
> inserted.
[snip]
> So, it works as expected if you're in strict mode, which I believe was
> only added in version 5.x but please don't quote me on that.  Also, it
> was off by default for a really long time (and may still be).

strict mode is off by default and will remain off by default until at least 6.0

That said, you can always turn it off on a per-session basis. And,
since the database doesn't verify itself when you turn strict mode
back on, the bad data remains, EVEN THOUGH YOU ARE BEING STRICT.

So, strict mode doesn't actually ensure anything other than you cannot
violate it if you choose to be in strict mode at the time you do
something potentially bad. I cannot make any assumptions about the
values returned by my SELECT statement regardless of the mode I'm in
when I execute it.

This is "Bad"™.

Rob

_______________________________________________
List: http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/dbix-class
IRC: irc.perl.org#dbix-class
SVN: http://dev.catalyst.perl.org/repos/bast/DBIx-Class/
Searchable Archive: http://www.grokbase.com/group/[email protected]

Reply via email to