pgsql2oracle.py
import re
names = [
"device_sync_field_config",
"device_sync_layer_config",
"device_sync_type_config",
]
time_pattern = r"'(\d{4}-\d{2}-\d{2})\s+(\d{2}:\d{2}:\d{2})'"
time_sql = r"TO_DATE('\1 \2', 'YYYY-MM-DD HH24:MI:SS')"
def pgsql2oracle(sql: str):
sql = sql.replace('"', "")
sql = re.sub(time_pattern, time_sql, sql)
return sql
def start():
for name in names:
source_path = f"./postgresql/{name}.sql"
target_path = f"./oracle/{name}.sql"
file = open(source_path, "r", encoding="utf-8")
data = file.read()
file.close()
data = pgsql2oracle(data)
file = open(target_path, "w", encoding="utf-8")
file.write(data)
file.close()
if __name__ == "__main__":
start()