aboutsummaryrefslogtreecommitdiffhomepage
path: root/backend/query.sql
diff options
context:
space:
mode:
authornsfisis <nsfisis@gmail.com>2025-09-06 01:30:31 +0900
committernsfisis <nsfisis@gmail.com>2025-09-06 01:30:31 +0900
commit8d739b386f2b555292fd8082c9de2199228737c9 (patch)
tree69ec44d214686cf80627216e984ae523eae8b98b /backend/query.sql
parente7b35cd81f2e515371a30a59ea4173a31dbeefc5 (diff)
downloadiosdc-japan-2025-albatross-8d739b386f2b555292fd8082c9de2199228737c9.tar.gz
iosdc-japan-2025-albatross-8d739b386f2b555292fd8082c9de2199228737c9.tar.zst
iosdc-japan-2025-albatross-8d739b386f2b555292fd8082c9de2199228737c9.zip
feat(backend): add admin pages for testcases
Diffstat (limited to 'backend/query.sql')
-rw-r--r--backend/query.sql31
1 files changed, 31 insertions, 0 deletions
diff --git a/backend/query.sql b/backend/query.sql
index 4d95e3f..76af82b 100644
--- a/backend/query.sql
+++ b/backend/query.sql
@@ -222,3 +222,34 @@ SET
language = $4,
sample_code = $5
WHERE problem_id = $1;
+
+-- name: ListTestcases :many
+SELECT * FROM testcases
+ORDER BY testcase_id;
+
+-- name: ListTestcasesByProblemID :many
+SELECT * FROM testcases
+WHERE problem_id = $1
+ORDER BY testcase_id;
+
+-- name: GetTestcaseByID :one
+SELECT * FROM testcases
+WHERE testcase_id = $1
+LIMIT 1;
+
+-- name: CreateTestcase :one
+INSERT INTO testcases (problem_id, stdin, stdout)
+VALUES ($1, $2, $3)
+RETURNING testcase_id;
+
+-- name: UpdateTestcase :exec
+UPDATE testcases
+SET
+ problem_id = $2,
+ stdin = $3,
+ stdout = $4
+WHERE testcase_id = $1;
+
+-- name: DeleteTestcase :exec
+DELETE FROM testcases
+WHERE testcase_id = $1;