[birds] Fix reset sequence for ebird imports
This commit is contained in:
@ -0,0 +1,30 @@
|
||||
from django.db import migrations
|
||||
|
||||
|
||||
def reset_sequence(apps, schema_editor):
|
||||
from django.db import connection
|
||||
|
||||
with connection.cursor() as cursor:
|
||||
vendor = connection.vendor
|
||||
if vendor == "postgresql":
|
||||
cursor.execute(
|
||||
"SELECT setval('scrobbles_ebirdcsvimport_id_seq', "
|
||||
"COALESCE((SELECT MAX(id) + 1 FROM scrobbles_ebirdcsvimport), 1), "
|
||||
"false)"
|
||||
)
|
||||
elif vendor == "sqlite":
|
||||
cursor.execute(
|
||||
"UPDATE sqlite_sequence SET seq = ("
|
||||
"SELECT COALESCE(MAX(id), 0) FROM scrobbles_ebirdcsvimport"
|
||||
") WHERE name = 'scrobbles_ebirdcsvimport'"
|
||||
)
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
dependencies = [
|
||||
("scrobbles", "0083_migrate_birding_data"),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.RunPython(reset_sequence, migrations.RunPython.noop),
|
||||
]
|
||||
Reference in New Issue
Block a user