aboutsummaryrefslogtreecommitdiff
path: root/qc_app/db/datasets.py
diff options
context:
space:
mode:
Diffstat (limited to 'qc_app/db/datasets.py')
-rw-r--r--qc_app/db/datasets.py15
1 files changed, 14 insertions, 1 deletions
diff --git a/qc_app/db/datasets.py b/qc_app/db/datasets.py
index 5816146..448db18 100644
--- a/qc_app/db/datasets.py
+++ b/qc_app/db/datasets.py
@@ -1,5 +1,6 @@
"""Functions for accessing the database relating to datasets."""
from datetime import date
+from typing import Optional
import MySQLdb as mdb
from MySQLdb.cursors import DictCursor
@@ -109,7 +110,7 @@ def probeset_create_dataset(conn: mdb.Connection,#pylint: disable=[too-many-argu
}
cursor.execute(
"""
- insert into ProbeSetFreeze(
+ INSERT INTO ProbeSetFreeze(
ProbeFreezeId, AvgId, Name, Name2, FullName, ShortName,
CreateTime, public, DataScale)
VALUES(
@@ -118,3 +119,15 @@ def probeset_create_dataset(conn: mdb.Connection,#pylint: disable=[too-many-argu
""",
dataset)
return {**dataset, "datasetid": cursor.lastrowid}
+
+def probeset_dataset_by_id(
+ conn: mdb.Connection, datasetid: int) -> Optional[dict]:
+ """Fetch a ProbeSet dataset by its ID"""
+ with conn.cursor(cursorclass=DictCursor) as cursor:
+ cursor.execute("SELECT * FROM ProbeSetFreeze WHERE Id=%s",
+ (datasetid,))
+ result = cursor.fetchone()
+ if bool(result):
+ return dict(result)
+
+ return None