messages.sql 823 B

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