Files
Memoh/db/queries/tts_models.sql
T
2026-03-13 02:49:52 +08:00

51 lines
1.2 KiB
SQL

-- name: CreateTtsModel :one
INSERT INTO tts_models (model_id, name, tts_provider_id, config)
VALUES (
sqlc.arg(model_id),
sqlc.arg(name),
sqlc.arg(tts_provider_id),
sqlc.arg(config)
)
RETURNING *;
-- name: GetTtsModelByID :one
SELECT * FROM tts_models WHERE id = sqlc.arg(id);
-- name: GetTtsModelWithProvider :one
SELECT
tm.*,
tp.provider AS provider_type
FROM tts_models tm
JOIN tts_providers tp ON tp.id = tm.tts_provider_id
WHERE tm.id = sqlc.arg(id);
-- name: ListTtsModels :many
SELECT * FROM tts_models
ORDER BY created_at DESC;
-- name: ListTtsModelsByProviderID :many
SELECT * FROM tts_models
WHERE tts_provider_id = sqlc.arg(tts_provider_id)
ORDER BY created_at DESC;
-- name: UpdateTtsModel :one
UPDATE tts_models
SET
name = sqlc.arg(name),
config = sqlc.arg(config),
updated_at = now()
WHERE id = sqlc.arg(id)
RETURNING *;
-- name: DeleteTtsModel :exec
DELETE FROM tts_models WHERE id = sqlc.arg(id);
-- name: DeleteTtsModelsByProviderID :exec
DELETE FROM tts_models WHERE tts_provider_id = sqlc.arg(tts_provider_id);
-- name: GetTtsModelByProviderAndModelID :one
SELECT * FROM tts_models
WHERE tts_provider_id = sqlc.arg(tts_provider_id)
AND model_id = sqlc.arg(model_id)
LIMIT 1;