mirror of https://github.com/kianby/stacosys
You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
39 lines
941 B
Python
39 lines
941 B
Python
3 years ago
|
#!/usr/bin/python
|
||
|
# -*- coding: UTF-8 -*-
|
||
|
|
||
|
import sqlite3
|
||
|
import datetime
|
||
|
from ulid import ULID
|
||
|
|
||
|
# add column ulid
|
||
|
connection = sqlite3.connect("db.sqlite")
|
||
|
cursor = connection.cursor()
|
||
|
script = """
|
||
|
PRAGMA foreign_keys = OFF;
|
||
|
BEGIN TRANSACTION;
|
||
|
ALTER TABLE comment ADD ulid INTEGER;
|
||
|
COMMIT;
|
||
|
PRAGMA foreign_keys = ON;
|
||
|
"""
|
||
|
cursor.executescript(script)
|
||
|
connection.close()
|
||
|
|
||
|
# fill in ulid column
|
||
|
connection = sqlite3.connect("db.sqlite")
|
||
|
cursor = connection.cursor()
|
||
|
updates = []
|
||
|
for row in cursor.execute('SELECT * FROM comment'):
|
||
|
row_id = row[0]
|
||
|
string_created = row[2]
|
||
|
date_created = datetime.datetime.strptime(string_created, "%Y-%m-%d %H:%M:%S")
|
||
|
ulid = ULID.from_datetime(date_created)
|
||
|
update = "UPDATE comment SET ulid = " + str(int(ulid)) + " WHERE id = " + str(row_id)
|
||
|
print(update)
|
||
|
updates.append(update)
|
||
|
|
||
|
for update in updates:
|
||
|
pass
|
||
|
connection.execute(update)
|
||
|
connection.commit()
|
||
|
connection.close()
|