@@ -107,74 +107,6 @@ def db_create_images_table() -> None:
107107 conn .close ()
108108
109109
110- def db_migrate_add_memories_columns () -> None :
111- """
112- Add Memories feature columns to existing images table if they don't exist.
113- This function handles backward compatibility for existing databases.
114- """
115- conn = _connect ()
116- cursor = conn .cursor ()
117-
118- try :
119- # Check if images table exists
120- cursor .execute (
121- "SELECT name FROM sqlite_master WHERE type='table' AND name='images'"
122- )
123- if not cursor .fetchone ():
124- logger .info (
125- "Images table does not exist yet, will be created by db_create_images_table()"
126- )
127- conn .close ()
128- return
129-
130- # Get existing columns
131- cursor .execute ("PRAGMA table_info(images)" )
132- columns = {row [1 ] for row in cursor .fetchall ()}
133-
134- # Add missing columns
135- changes_made = False
136-
137- if "latitude" not in columns :
138- cursor .execute ("ALTER TABLE images ADD COLUMN latitude REAL" )
139- logger .info ("Added column: latitude" )
140- changes_made = True
141-
142- if "longitude" not in columns :
143- cursor .execute ("ALTER TABLE images ADD COLUMN longitude REAL" )
144- logger .info ("Added column: longitude" )
145- changes_made = True
146-
147- if "captured_at" not in columns :
148- cursor .execute ("ALTER TABLE images ADD COLUMN captured_at DATETIME" )
149- logger .info ("Added column: captured_at" )
150- changes_made = True
151-
152- # Create indexes
153- cursor .execute (
154- "CREATE INDEX IF NOT EXISTS ix_images_latitude ON images(latitude)"
155- )
156- cursor .execute (
157- "CREATE INDEX IF NOT EXISTS ix_images_longitude ON images(longitude)"
158- )
159- cursor .execute (
160- "CREATE INDEX IF NOT EXISTS ix_images_captured_at ON images(captured_at)"
161- )
162- cursor .execute (
163- "CREATE INDEX IF NOT EXISTS ix_images_favourite_captured_at ON images(isFavourite, captured_at)"
164- )
165-
166- if changes_made :
167- logger .info ("Memories feature columns migration completed" )
168-
169- conn .commit ()
170-
171- except Exception as e :
172- logger .error (f"Error during Memories columns migration: { e } " )
173- conn .rollback ()
174- finally :
175- conn .close ()
176-
177-
178110def db_bulk_insert_images (image_records : List [ImageRecord ]) -> bool :
179111 """Insert multiple image records in a single transaction."""
180112 if not image_records :
0 commit comments