diff --git a/core/translate/emitter.rs b/core/translate/emitter.rs index 9754ebc63..fb68f8fc8 100644 --- a/core/translate/emitter.rs +++ b/core/translate/emitter.rs @@ -1095,6 +1095,19 @@ fn emit_update_insns( target_reg, &t_ctx.resolver, )?; + use crate::error::SQLITE_CONSTRAINT_NOTNULL; + program.emit_insn(Insn::HaltIfNull { + target_reg, + err_code: SQLITE_CONSTRAINT_NOTNULL, + description: format!( + "{}.{}", + table_ref.table.get_name(), + table_column + .name + .as_ref() + .expect("Column name must be present") + ), + }); } } else { let column_idx_in_index = index.as_ref().and_then(|(idx, _)| {