astrodatagui: StarsDB: add table for additional star info
This commit is contained in:
@@ -75,6 +75,18 @@ class StarDB():
|
||||
FOREIGN KEY (sourceName) REFERENCES sequenceSourceNames(sourceName)
|
||||
);""")
|
||||
|
||||
self.dbCursor.execute("""CREATE TABLE IF NOT EXISTS starInfo
|
||||
(
|
||||
mainName TEXT,
|
||||
spType TEXT,
|
||||
rotVel REAL,
|
||||
rotVelUnit TEXT,
|
||||
dist REAL,
|
||||
distUnit TEXT,
|
||||
PRIMARY KEY (mainName),
|
||||
FOREIGN KEY (mainName) REFERENCES starnames(mainName)
|
||||
);""")
|
||||
|
||||
self.insertDefaultValues()
|
||||
|
||||
self.connection.commit()
|
||||
@@ -92,8 +104,20 @@ class StarDB():
|
||||
starnames(mainName, altName)
|
||||
VALUES(\"{mainName}\", \"{an["ID"]}\")""")
|
||||
|
||||
def insertStar(self, mainName: str, altNames, productManifest):
|
||||
def insertStarInformations(self, mainName, spType, rotVel, rotVelUnit,
|
||||
dist, distUnit):
|
||||
print(f"""INSERT OR IGNORE INTO
|
||||
starInfo(mainName, spType, rotVel, rotVelUnit, dist, distUnit)
|
||||
VALUES(\"{mainName}\", \"{spType}\", {rotVel}, \"{rotVelUnit}\", {dist}, \"{distUnit}\")""")
|
||||
self.dbCursor.execute(f"""INSERT OR IGNORE INTO
|
||||
starInfo(mainName, spType, rotVel, rotVelUnit, dist, distUnit)
|
||||
VALUES(\"{mainName}\", \"{spType}\", {rotVel}, \"{rotVelUnit}\", {dist}, \"{distUnit}\")""")
|
||||
|
||||
def insertStar(self, mainName: str, altNames, productManifest,
|
||||
spType, rotVel, rotVelUnit, dist, distUnit):
|
||||
self.insertStarAlternativeNames(mainName, altNames)
|
||||
self.insertStarInformations(mainName, spType, rotVel, rotVelUnit,
|
||||
dist, distUnit)
|
||||
for pm in productManifest:
|
||||
file = pm["Local Path"]
|
||||
source = pm["source"]
|
||||
@@ -110,7 +134,7 @@ class StarDB():
|
||||
ORDER BY mainName""")
|
||||
return res.fetchall()
|
||||
|
||||
def getStarData(self, mainName):
|
||||
def getStarSequences(self, mainName):
|
||||
res = self.dbCursor.execute(f"""SELECT sourceName, sequence FROM stars
|
||||
WHERE mainName = \"{mainName}\"
|
||||
ORDER BY
|
||||
@@ -118,6 +142,12 @@ class StarDB():
|
||||
sequence ASC""")
|
||||
return res.fetchall()
|
||||
|
||||
def getStarInfos(self, mainName):
|
||||
res = self.dbCursor.execute(f"""SELECT spType, rotVel, rotVelUnit, dist, distUnit
|
||||
FROM starInfo
|
||||
WHERE mainName = \"{mainName}\"""")
|
||||
return res.fetchone()
|
||||
|
||||
def getFilePath(self, mainName, source, sequence):
|
||||
print(f"Trying for {mainName}, {source}, {sequence}")
|
||||
res = self.dbCursor.execute(f"""SELECT filename FROM stars
|
||||
|
||||
Reference in New Issue
Block a user