1- """Edit replace id integers in all models to use UUID instead
1+ """Edit replace id integers in all models to use UUID instead.
22
33Revision ID: d98dd8ec85a3
44Revises: 9c0a54914c78
1818
1919
2020def upgrade () -> None :
21+ """Upgrade database schema."""
2122 # Ensure uuid-ossp extension is available
2223 op .execute ('CREATE EXTENSION IF NOT EXISTS "uuid-ossp"' )
2324
@@ -39,14 +40,18 @@ def upgrade() -> None:
3940 ),
4041 )
4142 op .add_column (
42- "item" , sa .Column ("new_owner_id" , postgresql .UUID (as_uuid = True ), nullable = True ),
43+ "item" ,
44+ sa .Column (
45+ "new_owner_id" , postgresql .UUID (as_uuid = True ), nullable = True ,
46+ ),
4347 )
4448
4549 # Populate the new columns with UUIDs
4650 op .execute ('UPDATE "user" SET new_id = uuid_generate_v4()' )
4751 op .execute ("UPDATE item SET new_id = uuid_generate_v4()" )
4852 op .execute (
49- 'UPDATE item SET new_owner_id = (SELECT new_id FROM "user" WHERE "user".id = item.owner_id)' ,
53+ 'UPDATE item SET new_owner_id = '
54+ '(SELECT new_id FROM "user" WHERE "user".id = item.owner_id)' ,
5055 )
5156
5257 # Set the new_id as not nullable
@@ -69,10 +74,13 @@ def upgrade() -> None:
6974 op .create_primary_key ("item_pkey" , "item" , ["id" ])
7075
7176 # Recreate foreign key constraint
72- op .create_foreign_key ("item_owner_id_fkey" , "item" , "user" , ["owner_id" ], ["id" ])
77+ op .create_foreign_key (
78+ "item_owner_id_fkey" , "item" , "user" , ["owner_id" ], ["id" ],
79+ )
7380
7481
7582def downgrade () -> None :
83+ """Downgrade database schema."""
7684 # Reverse the upgrade process
7785 op .add_column ("user" , sa .Column ("old_id" , sa .Integer , autoincrement = True ))
7886 op .add_column ("item" , sa .Column ("old_id" , sa .Integer , autoincrement = True ))
@@ -81,22 +89,28 @@ def downgrade() -> None:
8189 # Populate the old columns with default values
8290 # Generate sequences for the integer IDs if not exist
8391 op .execute (
84- 'CREATE SEQUENCE IF NOT EXISTS user_id_seq AS INTEGER OWNED BY "user".old_id' ,
92+ 'CREATE SEQUENCE IF NOT EXISTS user_id_seq AS INTEGER '
93+ 'OWNED BY "user".old_id' ,
8594 )
8695 op .execute (
87- "CREATE SEQUENCE IF NOT EXISTS item_id_seq AS INTEGER OWNED BY item.old_id" ,
96+ "CREATE SEQUENCE IF NOT EXISTS item_id_seq AS INTEGER "
97+ "OWNED BY item.old_id" ,
8898 )
8999
90100 op .execute (
91- "SELECT setval('user_id_seq', COALESCE((SELECT MAX(old_id) + 1 FROM \" user\" ), 1), false)" ,
101+ "SELECT setval('user_id_seq', "
102+ 'COALESCE((SELECT MAX(old_id) + 1 FROM "user"), 1), false)' ,
92103 )
93104 op .execute (
94- "SELECT setval('item_id_seq', COALESCE((SELECT MAX(old_id) + 1 FROM item), 1), false)" ,
105+ "SELECT setval('item_id_seq', "
106+ "COALESCE((SELECT MAX(old_id) + 1 FROM item), 1), false)" ,
95107 )
96108
97109 op .execute ("UPDATE \" user\" SET old_id = nextval('user_id_seq')" )
98110 op .execute (
99- 'UPDATE item SET old_id = nextval(\' item_id_seq\' ), old_owner_id = (SELECT old_id FROM "user" WHERE "user".id = item.owner_id)' ,
111+ 'UPDATE item SET old_id = nextval(\' item_id_seq\' ), '
112+ 'old_owner_id = (SELECT old_id FROM "user" '
113+ 'WHERE "user".id = item.owner_id)' ,
100114 )
101115
102116 # Drop new columns and rename old columns back
@@ -115,4 +129,6 @@ def downgrade() -> None:
115129 op .create_primary_key ("item_pkey" , "item" , ["id" ])
116130
117131 # Recreate foreign key constraint
118- op .create_foreign_key ("item_owner_id_fkey" , "item" , "user" , ["owner_id" ], ["id" ])
132+ op .create_foreign_key (
133+ "item_owner_id_fkey" , "item" , "user" , ["owner_id" ], ["id" ],
134+ )
0 commit comments