Support EXECUTE ... USING for Postgres (#1153)

This commit is contained in:
Jonathan Lehto 2024-03-01 13:49:29 -05:00 committed by GitHub
parent 9db9d22480
commit 68b52a4ad6
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
3 changed files with 52 additions and 4 deletions

View file

@ -1421,6 +1421,7 @@ fn parse_execute() {
Statement::Execute {
name: "a".into(),
parameters: vec![],
using: vec![]
}
);
@ -1433,6 +1434,29 @@ fn parse_execute() {
Expr::Value(number("1")),
Expr::Value(Value::SingleQuotedString("t".to_string()))
],
using: vec![]
}
);
let stmt = pg_and_generic()
.verified_stmt("EXECUTE a USING CAST(1337 AS SMALLINT), CAST(7331 AS SMALLINT)");
assert_eq!(
stmt,
Statement::Execute {
name: "a".into(),
parameters: vec![],
using: vec![
Expr::Cast {
expr: Box::new(Expr::Value(Value::Number("1337".parse().unwrap(), false))),
data_type: DataType::SmallInt(None),
format: None
},
Expr::Cast {
expr: Box::new(Expr::Value(Value::Number("7331".parse().unwrap(), false))),
data_type: DataType::SmallInt(None),
format: None
},
]
}
);
}