diff --git a/libsql/src/parser.rs b/libsql/src/parser.rs index afce19af24..97cb71c785 100644 --- a/libsql/src/parser.rs +++ b/libsql/src/parser.rs @@ -121,6 +121,7 @@ impl StmtKind { Cmd::Stmt(Stmt::Attach { .. }) => Some(Self::Attach), Cmd::Stmt(Stmt::Detach(_)) => Some(Self::Detach), Cmd::Stmt(Stmt::Reindex { .. }) => Some(Self::Write), + Cmd::Stmt(Stmt::Analyze(..)) => Some(Self::Write), _ => None, } } @@ -298,4 +299,13 @@ mod tests { let stmt = result.next().unwrap().unwrap(); assert_eq!(stmt.kind, StmtKind::Attach); } + + #[test] + fn test_analyze_is_write() { + let mut result = Statement::parse("ANALYZE"); + + let stmt = result.next().unwrap().unwrap(); + assert_eq!(stmt.kind, StmtKind::Write); + assert!(!stmt.is_read_only()); + } }