pub fn split_with_parser(query: &str) -> Result<Vec<&str>>
Expand description

Split a well-formed query into separate statements.

Example

let query = r#"select /*;*/ 1; select "2;", (select 3);"#;
let statements = pg_query::split_with_parser(query).unwrap();
assert_eq!(statements, vec!["select /*;*/ 1", r#" select "2;", (select 3)"#]);

However, split_with_parser will fail on malformed statements

let query = "select 1; this statement is not sql; select 2;";
let result = pg_query::split_with_parser(query);
let err = r#"syntax error at or near "this""#;
assert_eq!(result, Err(pg_query::Error::Split(err.to_string())));