1-- name: GetMessage :one
2SELECT *
3FROM messages
4WHERE id = ? LIMIT 1;
5
6-- name: ListMessagesBySession :many
7SELECT *
8FROM messages
9WHERE session_id = ?
10ORDER BY created_at ASC;
11
12-- name: CreateMessage :one
13INSERT INTO messages (
14 id,
15 session_id,
16 role,
17 parts,
18 created_at,
19 updated_at
20) VALUES (
21 ?, ?, ?, ?, strftime('%s', 'now'), strftime('%s', 'now')
22)
23RETURNING *;
24
25-- name: UpdateMessage :exec
26UPDATE messages
27SET
28 parts = ?,
29 updated_at = strftime('%s', 'now')
30WHERE id = ?;
31
32-- name: DeleteMessage :exec
33DELETE FROM messages
34WHERE id = ?;
35
36-- name: DeleteSessionMessages :exec
37DELETE FROM messages
38WHERE session_id = ?;