44 lines
1.5 KiB
Python
44 lines
1.5 KiB
Python
import sqlite3
|
|
import os
|
|
|
|
def add_row_order_column():
|
|
# Путь к вашей базе данных
|
|
db_path = 'data/data.db' # или ваш путь
|
|
|
|
if not os.path.exists(db_path):
|
|
print(f"База данных не найдена по пути: {db_path}")
|
|
return
|
|
|
|
conn = sqlite3.connect(db_path)
|
|
cursor = conn.cursor()
|
|
|
|
try:
|
|
# Проверяем, существует ли колонка
|
|
cursor.execute("PRAGMA table_info(documents_sbis)")
|
|
columns = [column[1] for column in cursor.fetchall()]
|
|
|
|
if 'row_order' not in columns:
|
|
print("Добавляем колонку row_order...")
|
|
cursor.execute("ALTER TABLE documents_sbis ADD COLUMN row_order INTEGER DEFAULT 0")
|
|
conn.commit()
|
|
print("Колонка row_order успешно добавлена!")
|
|
|
|
# Обновляем существующие записи
|
|
cursor.execute("""
|
|
UPDATE documents_sbis
|
|
SET row_order = id
|
|
WHERE row_order = 0
|
|
""")
|
|
conn.commit()
|
|
print("Существующие записи обновлены.")
|
|
else:
|
|
print("Колонка row_order уже существует.")
|
|
|
|
except Exception as e:
|
|
print(f"Ошибка: {e}")
|
|
conn.rollback()
|
|
finally:
|
|
conn.close()
|
|
|
|
if __name__ == "__main__":
|
|
add_row_order_column() |