发表日期: 2022-11-30 12:38:49 浏览次数:82
保山百姓网推广/如何办理/收费标准/价格多少钱/排名代运营/代理商联系方式-保山百姓网开户费用/招聘/找工作/二手车/租车/房产/电话

利用区块链的去中心化机制,能够让消费者对自身数据实现自我管理,降低第三方平台管理患者隐私数据存在的信息泄露风险。同时消费者在对个人信息管理时,区块链的分布式算法能够为用户分配一个个人密钥,用户根据自身需求对信息进行公开化,保障用户进行数据交易过程中的安全性。此外,区块链的溯源性能让消费者在提供价值数据时获得相应回报,并保障数据原有者的“版权”利益。在去中心化的区块链医药市场中,消费者数据安全性得以保证,药厂知识产权的版权利益受到保护,传统中心化平台数据存储成本降低,医药市场的大数据环境将呈公平、高度安全的发展趋势。
你可以在一个字符串中传递多个命令,SPI_execute会返回最后一个被执行的命令的结果。 count限制单独适用于每一个命令(即便只有最后一个结果会被实际返回)。该限制 不适用于由规则产生的任何隐藏命令。
当read_only是false时, SPI_execute增加命令计数器并且在执行字符串中每一个命令之前 计算一个新的snapshot。如果当前事务隔离级别是SERIALIZABLE或REPEATABLE READ, 该快照并不会实际改变。但是在READ COMMITTED模式中,快照更新允许每个命令看到来自其他会话中新近已提交事务 的结果。当命令正在修改数据库时,这对一致性行为非常重要。
当read_only是true时, SPI_execute不更新快照或者命令计数器,并且它只允许纯 SELECT命令出现在命令字符串中。这些命令被使用之前为周围查询 建立的快照来执行。这种执行模式要比读/写模式更快,因为消除了每个命令跟新快照的开销。 它也允许建立真正stable的函数:因为连续执行将会使用同一个快照,因此结果不会有改变。
在一个使用 SPI 的单一函数中混合只读和读写命令通常是不明智的, 这样可能会导致非常令人困惑的行为,因为只读查询将看不到任何 由读写查询完成的数据库更新结果。
被执行的(最后一个)命令的实际行数使用全局变量SPI_processed返回。 如果该函数的返回值是SPI_OK_SELECT、 SPI_OK_INSERT_RETURNING、 SPI_OK_DELETE_RETURNING或者 SPI_OK_UPDATE_RETURNING, 那么你可以使用全局指针SPITupleTable *SPI_tuptable来访问结果行。 某些工具命令(例如EXPLAIN)也返回行集合,并且在这些情况中SPI_tuptable 也会包含该结果。某些工具命令(COPY、CREATE TABLE AS)不返回一个行集合, 因此SPI_tuptable为 NULL,但是它们仍然会在SPI_processed中返回被处理的行数。
结构SPITupleTable被定义为:
typedef struct
{
MemoryContext tuptabcxt; /* 结果表的内存上下文 */
uint64 alloced; /* 已分配值的数量 */
uint64 free; /* 空闲的数量 */
TupleDesc tupdesc; /* 行描述符 */
HeapTuple *vals; /* 行 */
} SPITupleTable;vals是一个行指针的数组(可用项的数量由SPI_processed给出)。 tupdesc是一个行描述符,你可以把它传递给 SPI 函数来处理行。tuptabcxt、 alloced和free是不准备给 SPI 调用者使用的内部域。
SPI_finish释放在当前过程中已分配的所有SPITupleTable。 如果你已经用完了一个结果表,你可以通过调用SPI_freetuptable提早释放它。
保山百姓网推广/如何办理/收费标准/价格多少钱/排名代运营/代理商联系方式-保山百姓网开户费用/招聘/找工作/二手车/租车/房产/电话