Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
DBIx::Class::Storage::User:Contributed PerDBIx::Class::Storage::DBI::SQLite(3)

NAME
       DBIx::Class::Storage::DBI::SQLite - Automatic primary key class for
       SQLite

SYNOPSIS
	 # In your table classes
	 use base 'DBIx::Class::Core';
	 __PACKAGE__->set_primary_key('id');

DESCRIPTION
       This class implements autoincrements for	SQLite.

   Known Issues
       RT79576
	    NOTE - This	section	applies	to you only if ALL of these are	true:

	     * You are or were using DBD::SQLite with a	version	lesser than 1.38_01

	     * You are or were using DBIx::Class versions between 0.08191 and 0.08209
	       (inclusive) or between 0.08240-TRIAL and	0.08242-TRIAL (also inclusive)

	     * You use objects with overloaded stringification and are feeding them
	       to DBIC CRUD methods directly

	   An unfortunate chain	of events led to DBIx::Class silently hitting
	   the problem described in RT#79576
	   <https://rt.cpan.org/Public/Bug/Display.html?id=79576>.

	   In order to trigger the bug condition one needs to supply more than
	   one bind value that is an object with overloaded stringification
	   (numification is not	relevant, only stringification is). When this
	   is the case the internal DBIx::Class	call to	"$sth->bind_param"
	   would be executed in	a way that triggers the	above-mentioned
	   DBD::SQLite bug. As a result	all the	logs and tracers will contain
	   the expected	values,	however	SQLite will receive all	these bind
	   positions being set to the value of the last	supplied stringifiable
	   object.

	   Even	if you upgrade DBIx::Class (which works	around the bug
	   starting from version 0.08210) you may still	have
	   corrupted/incorrect data in your database.  DBIx::Class warned
	   about this condition	for several years, hoping to give anyone
	   affected sufficient notice of the potential issues. The warning was
	   removed in 2015/v0.082820.

METHODS
   connect_call_use_foreign_keys
       Used as:

	   on_connect_call => 'use_foreign_keys'

       In connect_info to turn on foreign key (including cascading) support
       for recent versions of SQLite and DBD::SQLite.

       Executes:

	 PRAGMA	foreign_keys = ON

       See <http://www.sqlite.org/foreignkeys.html> for	more information.

FURTHER	QUESTIONS?
       Check the list of additional DBIC resources.

COPYRIGHT AND LICENSE
       This module is free software copyright by the DBIx::Class (DBIC)
       authors.	You can	redistribute it	and/or modify it under the same	terms
       as the DBIx::Class library.

perl v5.24.1			  2016-06-DBIx::Class::Storage::DBI::SQLite(3)

NAME | SYNOPSIS | DESCRIPTION | METHODS | FURTHER QUESTIONS? | COPYRIGHT AND LICENSE

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=DBIx::Class::Storage::DBI::SQLite&sektion=3&manpath=FreeBSD+12.1-RELEASE+and+Ports>

home | help