mirror of
https://github.com/valitydev/redash.git
synced 2024-11-07 01:25:16 +00:00
21 lines
720 B
Python
21 lines
720 B
Python
from redash.models import db
|
|
|
|
if __name__ == '__main__':
|
|
db.connect_db()
|
|
|
|
with db.database.transaction():
|
|
# Make sure all data sources names are unique.
|
|
db.database.execute_sql("""
|
|
UPDATE data_sources
|
|
SET name = new_names.name
|
|
FROM (
|
|
SELECT id, name || ' ' || id as name
|
|
FROM (SELECT id, name, rank() OVER (PARTITION BY name ORDER BY created_at ASC) FROM data_sources) ds WHERE rank > 1
|
|
) AS new_names
|
|
WHERE data_sources.id = new_names.id;
|
|
""")
|
|
# Add unique constraint on data_sources.name.
|
|
db.database.execute_sql("ALTER TABLE data_sources ADD CONSTRAINT unique_name UNIQUE (name);")
|
|
|
|
db.close_db(None)
|