exparmental run_command in linux.py migrate_sql1.py
This commit is contained in:
@@ -0,0 +1,66 @@
|
||||
import sqlite3
|
||||
|
||||
# Connect to your database file
|
||||
db_name = "database.db" # Change to your actual file name
|
||||
conn = sqlite3.connect(db_name)
|
||||
cursor = conn.cursor()
|
||||
|
||||
try:
|
||||
# 1. Create a temporary table with the new text-based game_id
|
||||
cursor.execute(
|
||||
"""
|
||||
CREATE TABLE IF NOT EXISTS twitch_videos_temp (
|
||||
id TEXT PRIMARY KEY,
|
||||
title TEXT NOT NULL,
|
||||
created_at TEXT NOT NULL,
|
||||
view_count INTEGER NOT NULL,
|
||||
duration TEXT NOT NULL,
|
||||
url TEXT NOT NULL,
|
||||
thumbnail_url TEXT NOT NULL,
|
||||
game_id TEXT NOT NULL,
|
||||
game_name TEXT NOT NULL,
|
||||
stream_id TEXT NOT NULL,
|
||||
creator_name TEXT NOT NULL,
|
||||
clip_is BOOLEAN NOT NULL DEFAULT 0,
|
||||
downloaded BOOLEAN NOT NULL DEFAULT 0,
|
||||
uploaded_yt BOOLEAN NOT NULL DEFAULT 0,
|
||||
uploaded_yt_chats BOOLEAN NOT NULL DEFAULT 0,
|
||||
uploaded_yt_shorts BOOLEAN NOT NULL DEFAULT 0
|
||||
)
|
||||
"""
|
||||
)
|
||||
|
||||
# 2. Copy and convert data to the temporary table
|
||||
cursor.execute(
|
||||
"""
|
||||
INSERT INTO twitch_videos_temp (
|
||||
id, title, created_at, view_count, duration, url, thumbnail_url,
|
||||
game_id, game_name, stream_id, creator_name, clip_is, downloaded,
|
||||
uploaded_yt, uploaded_yt_chats, uploaded_yt_shorts
|
||||
)
|
||||
SELECT
|
||||
id, title, created_at, view_count, duration, url, thumbnail_url,
|
||||
CAST(game_id AS TEXT), game_name, stream_id, creator_name, clip_is, downloaded,
|
||||
uploaded_yt, uploaded_yt_chats, uploaded_yt_shorts
|
||||
FROM twitch_videos
|
||||
"""
|
||||
)
|
||||
|
||||
# 3. Drop the old table configuration
|
||||
cursor.execute("DROP TABLE twitch_videos")
|
||||
|
||||
# 4. Rename the temporary table to your exact original table name
|
||||
cursor.execute("ALTER TABLE twitch_videos_temp RENAME TO twitch_videos")
|
||||
|
||||
# Commit changes if everything succeeded
|
||||
conn.commit()
|
||||
print("Migration successful! 'twitch_videos' table updated.")
|
||||
|
||||
except sqlite3.Error as e:
|
||||
# Roll back changes if an error occurs
|
||||
conn.rollback()
|
||||
print(f"An error occurred: {e}")
|
||||
|
||||
finally:
|
||||
# Close database connection
|
||||
conn.close()
|
||||
Reference in New Issue
Block a user