From edac135e3ae9c29c0d7ef3d1a57468c762a2b4ed Mon Sep 17 00:00:00 2001 From: Paul Philippov Date: Fri, 15 Sep 2017 13:58:49 -0400 Subject: [PATCH 1/2] Add support for Mysql2 DB adapter --- lib/activerecord-reset-pk-sequence.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/activerecord-reset-pk-sequence.rb b/lib/activerecord-reset-pk-sequence.rb index b8fae5b..ac28af5 100644 --- a/lib/activerecord-reset-pk-sequence.rb +++ b/lib/activerecord-reset-pk-sequence.rb @@ -8,7 +8,7 @@ def self.reset_pk_sequence new_max = maximum(primary_key) || 0 update_seq_sql = "UPDATE sqlite_sequence SET seq = #{new_max} WHERE name = '#{table_name}';" ActiveRecord::Base.connection.execute(update_seq_sql) - when 'Mysql' + when 'Mysql', 'Mysql2' new_max = maximum(primary_key) + 1 || 1 update_seq_sql = "ALTER TABLE '#{table_name}' AUTO_INCREMENT = #{new_max};" ActiveRecord::Base.connection.execute(update_seq_sql) From 470ec0b2e97ce3b12e82e195491673e78a4c0750 Mon Sep 17 00:00:00 2001 From: Paul Philippov Date: Fri, 15 Sep 2017 14:10:11 -0400 Subject: [PATCH 2/2] Update activerecord-reset-pk-sequence.rb --- lib/activerecord-reset-pk-sequence.rb | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/activerecord-reset-pk-sequence.rb b/lib/activerecord-reset-pk-sequence.rb index ac28af5..7870f4f 100644 --- a/lib/activerecord-reset-pk-sequence.rb +++ b/lib/activerecord-reset-pk-sequence.rb @@ -9,8 +9,8 @@ def self.reset_pk_sequence update_seq_sql = "UPDATE sqlite_sequence SET seq = #{new_max} WHERE name = '#{table_name}';" ActiveRecord::Base.connection.execute(update_seq_sql) when 'Mysql', 'Mysql2' - new_max = maximum(primary_key) + 1 || 1 - update_seq_sql = "ALTER TABLE '#{table_name}' AUTO_INCREMENT = #{new_max};" + new_max = maximum(primary_key).to_i + 1 + update_seq_sql = "ALTER TABLE `#{table_name}` AUTO_INCREMENT = #{new_max};" ActiveRecord::Base.connection.execute(update_seq_sql) when 'PostgreSQL' ActiveRecord::Base.connection.reset_pk_sequence!(table_name)