逻辑复制的行为类似于正常的DML操作,即便数据在订阅者节点本地被修改,逻辑复制也会根据收到的更改来更新数据。如果流入的数据违背了任何约束,复制将停止。这种情况被称为一个冲突。在复制UPDATE
或DELETE
操作时,缺失的数据将不会产生冲突并且这类操作将被简单地跳过。
冲突将会产生错误并且停止复制,它必须由用户手工解决。在订阅者的服务器日志中可以找到有关冲突的详细情况。
通过更改订阅者上的数据(这样它就不会与到来的数据发生冲突)或者跳过与已有数据冲突的事务可以解决这种冲突。通过调用pg_replication_origin_advance()
函数可以跳过该事务,函数的参数是对应于该订阅名称的node_name
以及一个位置。复制源头的当前位置可以在
pg_replication_origin_status
系统视图中看到。
35.3.1. 执行 SQL 语句35.3.2. 使用游标35.3.3. 管理事务35.3.4. 预备语句任何 SQL 命令都可以在一个嵌入式 SQL 应用中被运行。...
libecpg库主要包含用于实现嵌入式 SQL 命令所表达功能的“隐藏”函数。但是也有一些可以被直接调用的函数。但是注意这会让你的代...
Checkbox defaultChecked 属性 Checkbox 对象定义和用法defaultChecked 属性可返回 checked 属性的默认值。该属性在 checkbox 默...
Image longDesc 属性 Image 对象定义和用法longDesc 属性可设置或返回图片的 longDesc 属性值。longdesc 属性指定了包含图像描...
Input Button disabled 属性 Input Button 对象实例实例 1禁用一个按钮:scriptdocument.getElementById("firstbtn").disabled=tr...