diff --git a/core/schema.rs b/core/schema.rs index b744a99a5..c708b2f4d 100644 --- a/core/schema.rs +++ b/core/schema.rs @@ -1635,6 +1635,9 @@ pub fn create_table(tbl_name: &str, body: &CreateTableBody, root_page: i64) -> R ast::ColumnConstraint::Check { .. } => { crate::bail_parse_error!("CHECK constraints are not yet supported"); } + ast::ColumnConstraint::Generated { .. } => { + crate::bail_parse_error!("GENERATED columns are not yet supported"); + } ast::ColumnConstraint::PrimaryKey { order: o, auto_increment, @@ -1727,7 +1730,6 @@ pub fn create_table(tbl_name: &str, body: &CreateTableBody, root_page: i64) -> R }; foreign_keys.push(Arc::new(fk)); } - _ => {} } } diff --git a/core/translate/schema.rs b/core/translate/schema.rs index 152cca652..120ad5ce9 100644 --- a/core/translate/schema.rs +++ b/core/translate/schema.rs @@ -41,8 +41,14 @@ fn validate(body: &ast::CreateTableBody, connection: &Connection) -> Result<()> let col_i = &columns[i]; for constraint in &col_i.constraints { // don't silently ignore CHECK constraints, throw parse error for now - if let ast::ColumnConstraint::Check { .. } = constraint.constraint { - bail_parse_error!("CHECK constraints are not supported yet"); + match constraint.constraint { + ast::ColumnConstraint::Check { .. } => { + bail_parse_error!("CHECK constraints are not supported yet"); + } + ast::ColumnConstraint::Generated { .. } => { + bail_parse_error!("GENERATED columns are not supported yet"); + } + _ => {} } } for j in &columns[(i + 1)..] {