diff --git a/backend/database/sql/queries/playlists.sql b/backend/database/sql/queries/playlists.sql index 351697e..2f94a7f 100644 --- a/backend/database/sql/queries/playlists.sql +++ b/backend/database/sql/queries/playlists.sql @@ -14,6 +14,9 @@ UPDATE playlists SET name = ?, updated_at = CURRENT_TIMESTAMP WHERE id = ?; -- name: DeletePlaylist :exec DELETE FROM playlists WHERE id = ?; +-- name: CountPlaylistsByName :one +SELECT COUNT(*) AS count FROM playlists WHERE name = ?; + -- name: AddPlaylistTrack :one INSERT INTO playlist_tracks (playlist_id, audio_file_id, position) VALUES (?, ?, ?) RETURNING *; diff --git a/backend/database/sql/sqlcgen/playlists.sql.go b/backend/database/sql/sqlcgen/playlists.sql.go index 13200dd..56a1000 100644 --- a/backend/database/sql/sqlcgen/playlists.sql.go +++ b/backend/database/sql/sqlcgen/playlists.sql.go @@ -41,6 +41,17 @@ func (q *Queries) ClearPlaylistTracks(ctx context.Context, playlistID int64) err return err } +const countPlaylistsByName = `-- name: CountPlaylistsByName :one +SELECT COUNT(*) AS count FROM playlists WHERE name = ? +` + +func (q *Queries) CountPlaylistsByName(ctx context.Context, name string) (int64, error) { + row := q.db.QueryRowContext(ctx, countPlaylistsByName, name) + var count int64 + err := row.Scan(&count) + return count, err +} + const createPlaylist = `-- name: CreatePlaylist :one INSERT INTO playlists (name) VALUES (?) RETURNING id, name, created_at, updated_at