90 lines
3.4 KiB
Python
90 lines
3.4 KiB
Python
import numpy as np
|
|
from PyQt5.QtWidgets import QFileDialog, QApplication
|
|
import sqlite3
|
|
import settings as stg
|
|
from os import chdir, getcwd
|
|
import time
|
|
|
|
|
|
class UpdateTableForSave:
|
|
|
|
def __init__(self):
|
|
|
|
start = time.time()
|
|
chdir(stg.dirname_save_as)
|
|
print("get cwd for save :", getcwd())
|
|
print("stg.filename_save_as ", stg.filename_save_as)
|
|
self.update_table()
|
|
print(f"end : {time.time() - start} sec")
|
|
|
|
def update_table(self):
|
|
|
|
# Create a new database and open a database connection to allow sqlite3 to work with it.
|
|
cnx = sqlite3.connect(stg.filename_save_as + '.acd')
|
|
|
|
# Create database cursor to execute SQL statements and fetch results from SQL queries.
|
|
cur = cnx.cursor()
|
|
|
|
# --------------------------------------------------------------------------------------------------------------
|
|
# --- Table BSRawData_i ---
|
|
start_table_BSRawData = time.time()
|
|
|
|
# # --- Fill table BSRawData_i with data stg.depth_reshape ---
|
|
#
|
|
# for i in stg.acoustic_data:
|
|
# exec("query1 = '''ALTER TABLE BSRawData ADD COLUMN BS_cross_section BLOB''' ")
|
|
#
|
|
# exec("cur.execute(query1)")
|
|
#
|
|
# # Commit the transaction after executing INSERT.
|
|
# cnx.commit()
|
|
#
|
|
# for i in stg.acoustic_data:
|
|
# cur.execute(f"''' UPDATE BSRawData SET BS_cross_section = " + str(stg.BS_cross_section[i].tobytes()) + " WHERE acoustic_data =" + str(i) + " ''' ")
|
|
#
|
|
# # Commit the transaction after executing INSERT.
|
|
# cnx.commit()
|
|
#
|
|
# print(f"end : {time.time() - start_table_BSRawData} sec")
|
|
|
|
if stg.BS_cross_section:
|
|
|
|
cur.execute(''' DROP TABLE BSRawData ''')
|
|
print(f"end : {time.time() - start_table_BSRawData} sec")
|
|
|
|
cur.execute('''CREATE TABLE BSRawData(
|
|
ID INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
acoustic_data INTEGER,
|
|
time BLOB,
|
|
time_cross_section BLOB,
|
|
depth BLOB,
|
|
depth_cross_section BLOB,
|
|
BS_raw_data BLOB,
|
|
BS_cross_section BLOB)''')
|
|
|
|
for i in stg.acoustic_data:
|
|
|
|
cur.execute(''' INSERT into BSRawData(acoustic_data, time, time_cross_section,
|
|
depth, depth_cross_section,
|
|
BS_raw_data, BS_cross_section)
|
|
VALUES(?, ?, ?, ?, ?, ?, ?)''',
|
|
(stg.acoustic_data[i], stg.time[i].tobytes(), stg.time_cross_section[i].tobytes(),
|
|
stg.depth[i].tobytes(), stg.depth_cross_section[i].tobytes(),
|
|
stg.BS_raw_data[i].tobytes(), stg.BS_cross_section[i].tobytes()))
|
|
|
|
cnx.commit()
|
|
|
|
if stg.depth_bottom:
|
|
|
|
pass
|
|
|
|
|
|
# Close database cursor
|
|
cur.close()
|
|
|
|
# Close database connection
|
|
cnx.close()
|
|
|
|
|
|
|