首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >只有在事务进入提交状态后才会进行实际写入。

只有在事务进入提交状态后才会进行实际写入。
EN

Database Administration用户
提问于 2021-01-07 18:32:40
回答 1查看 43关注 0票数 0

下面的文本来自Silberschatz的数据库系统概念。它说,只有在事务进入提交状态之后才会发生实际的写入。

我的问题是:当事务进入提交状态时,没有更多的语句要执行,那么谁将执行这些实际的写操作?

在处理可观察到的外部写入时,我们必须谨慎,例如向用户屏幕写入或发送电子邮件。一旦发生这种写入,就不能删除它,因为它可能是在数据库系统外部看到的。大多数系统只允许在事务进入提交状态后才进行此类写入。实现这种方案的一种方法是,数据库系统将与这种外部写入相关的任何值暂时存储在数据库中的一个特殊关系中,并且只在事务进入提交状态后才执行实际写入。如果系统在事务进入提交状态后失败,但在它完成外部写入之前,数据库系统将在系统重新启动时执行外部写入(使用非易失性存储中的数据)。

EN

回答 1

Database Administration用户

发布于 2023-03-28 09:58:26

据我所知,当前上下文中的“写”指的是外部写入(例如向用户屏幕写入或发送电子邮件)。

例如,银行应用程序首先将存款信息存储在数据库中,然后提交数据库事务,然后才进行“外部写入”--在终端屏幕上显示确认或发送确认电子邮件。- https://dba.stackexchange.com/users/2232

票数 0
EN
页面原文内容由Database Administration提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://dba.stackexchange.com/questions/282771

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档