SQLite: use AUTOINCREMENT primary key in >= 3.1.0. Closes #6588.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@5477 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
This commit is contained in:
parent
510092c681
commit
d97a84fb59
@ -1,5 +1,7 @@
|
||||
*SVN*
|
||||
|
||||
* SQLite: use AUTOINCREMENT primary key in >= 3.1.0. #6588 [careo]
|
||||
|
||||
* Cache inheritance_column. #6592 [Stefan Kaes]
|
||||
|
||||
* Firebird: decimal/numeric support. #6408 [macrnic]
|
||||
|
@ -108,7 +108,7 @@ def supports_count_distinct? #:nodoc:
|
||||
|
||||
def native_database_types #:nodoc:
|
||||
{
|
||||
:primary_key => "INTEGER PRIMARY KEY NOT NULL",
|
||||
:primary_key => default_primary_key_type,
|
||||
:string => { :name => "varchar", :limit => 255 },
|
||||
:text => { :name => "text" },
|
||||
:integer => { :name => "integer" },
|
||||
@ -351,6 +351,14 @@ def catch_schema_changes
|
||||
def sqlite_version
|
||||
@sqlite_version ||= select_value('select sqlite_version(*)')
|
||||
end
|
||||
|
||||
def default_primary_key_type
|
||||
if sqlite_version >= '3.1.0'
|
||||
'INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL'.freeze
|
||||
else
|
||||
'INTEGER PRIMARY KEY NOT NULL'.freeze
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
class SQLite2Adapter < SQLiteAdapter # :nodoc:
|
||||
|
@ -8,6 +8,7 @@ class SchemaDumperTest < Test::Unit::TestCase
|
||||
def standard_dump
|
||||
stream = StringIO.new
|
||||
ActiveRecord::SchemaDumper.ignore_tables = []
|
||||
ActiveRecord::SchemaDumper.ignore_tables << /^sqlite_/ if current_adapter?(:SQLiteAdapter)
|
||||
ActiveRecord::SchemaDumper.dump(ActiveRecord::Base.connection, stream)
|
||||
stream.string
|
||||
end
|
||||
|
Loading…
Reference in New Issue
Block a user