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 model,
19 provider,
20 is_summary_message,
21 created_at,
22 updated_at
23) VALUES (
24 ?, ?, ?, ?, ?, ?, ?, strftime('%s', 'now'), strftime('%s', 'now')
25)
26RETURNING *;
27
28-- name: UpdateMessage :exec
29UPDATE messages
30SET
31 parts = ?,
32 finished_at = ?,
33 updated_at = strftime('%s', 'now')
34WHERE id = ?;
35
36
37-- name: DeleteMessage :exec
38DELETE FROM messages
39WHERE id = ?;
40
41-- name: DeleteSessionMessages :exec
42DELETE FROM messages
43WHERE session_id = ?;